我在 arch wiki 上看到,不建议在磁盘上创建 ZFS 文件系统之前对其进行分区。我搜索了一下,但没有找到有关 ext4 的任何此类声明。
我的问题是:
- 我可以将 ext4 文件系统放在磁盘上进行存储(不是系统的根分区)而不对其进行分区吗?
- 有什么缺点?
答案1
不是必需的,但你应该分区。分区表占用的空间很小,但它是普遍可识别的。如果你把它放在 Windows 框中,Windows 就会知道那里有一个文件系统。如果你没有分区,其他操作系统只会把它当作一个空驱动器。
答案2
你可以在有或没有分区的裸块设备上运行任何文件系统,但危险的是,无论是用户还是操作系统预计查看块设备上的分区表以了解是否存在数据。
(毕竟,原始磁盘和分区都只是块设备)
ZFS 实际上创建了这样一个保护分区表,这就是为什么在未分区的设备上执行此操作是安全的:
$ zpool status
...
NAME STATE READ WRITE CKSUM
storage ONLINE 0 0 0
raidz2-0 ONLINE 0 0 0
sda ONLINE 0 0 0
sdb ONLINE 0 0 0
...
$ sudo gdisk -l /dev/sda
...
MBR: protective
GPT: present
...
Number Start (sector) End (sector) Size Code Name
1 2048 7814019071 3.6 TiB BF01 zfs
9 7814019072 7814035455 8.0 MiB BF07
答案3
是的,您可以格式化整个块设备,而不需要先创建分区。
在 SAN LUN 和多重启动系统上,我建议创建分区并设置正确的文件系统 ID,因为这样可能会存在其他操作系统和/或操作员将未分区的磁盘解释为空闲且未使用的风险。
答案4
对于 OS 磁盘,你需要对磁盘进行分区,因为引导加载程序会读取分区表,但对于数据磁盘,你不需要磁盘分区,但我建议使用带有 ext4 的 lvm,因为将来你的空间可能会消失