ZFS池可能包含数据集(文件系统,快照等)或卷。 ZFS卷就像块设备,但我不明白池和文件系统之间的区别。当我通过zpool create pool1 sda sdb sdc
创建pool1而不是zpool create pool1/fs
时,我可以在df -h
输出pool1
和pool1/fs
中看到两个新行。 zfs list
输出中的相同内容。现在,我可以将文件复制到池中并转换为fs。我可以在两者上设置重复数据删除或压缩。那么区别是什么呢?为什么不应该/不应该在池中创建文件系统?如果可能,请提供一些使用示例。
答案 0 :(得分:6)
池是磁盘的集合,您可以在其中存储文件系统和卷。当您创建一个时,您还会得到一个基本级文件系统,您创建的所有其他文件系统将继承属性(例如要使用的压缩算法等)。
文件系统是您可以将文件写入的文件系统,它们都使用池中的存储来编写数据。通常,您将逻辑上相似的数据分组到同一个文件系统中,因为这样您可以将所有数据视为相同的w.r.t.压缩,快照等。您可以通过NFS将文件系统通过网络共享给其他计算机。
卷(又名doSave() {
saveAs(this.xmlBlob, “temp.xlsx”);
}
)是一个假磁盘,它使用池中的存储来写入其数据。它有点像一个大文件,除了你也可以直接对它进行压缩/快照等,而不是通过包含它的文件系统。通常,只有在运行VM时才会创建卷。虽然我相信您可以基于一组zvol
(池中的池)创建池,但一般来说这不是一个好主意(但它对ZFS开发人员的测试很有用) 。您可以通过iSCSI或FibreChannel通过网络与其他计算机共享卷。