原始软件 raid 设备或分区上的 mkfs

Pav*_*kov 3 partition software-raid mkfs

我正在制作一个巨大的 RAID10 设备(8 TB)用于 CentOS 上的存储。我在我的 4 个物理硬盘上创建了 4 个分区,并在这 4 个分区中创建了 raid 设备 /dev/md2。

现在是时候在其上放置文件系统了。我想知道我是否应该只做:

mkfs.ext4 /dev/md2
Run Code Online (Sandbox Code Playgroud)

这完全有效(我试过了),或者我应该首先在该设备上创建一个分区(使用 fdisk、gdisk 或 parted?),占用所有空间,然后在该分区上执行 mkfs 操作。

谷歌搜索网络,我发现另一个人在这里问了同样的问题:http : //ubuntuforums.org/showthread.php?t=2174067但是,尽管响应者说:

分区继续在阵列成员上。
文件系统在阵列上。

他们没有给他一个明确的、明确的答案或解释,当一种方法应该优先于另一种方法时。

kas*_*erd 5

我曾经使用过的唯一方法是对物理磁盘进行分区,然后将这些分区组合成一个 RAID,并将文件系统(或交换)直接放在md设备上。

据我所知,对 md 设备进行分区是一项功能,后来添加了该功能,但从未被广泛使用。

我建议不要尝试直接在物理设备上创建 RAID,而不先对该设备进行分区。很多软件都希望对硬盘进行分区,分区表包含每个分区的类型字段,它会告诉读取分区表的软件该分区是 RAID 的一部分。

是否在md设备顶部使用分区表可能是一个品味问题。这可能完全是由于历史原因,通常没有这样做。额外的分区表层消耗的少量额外磁盘空间当然不是避免它的理由,就像在较低层一样,md 设备顶部的分区表将指示期望在内部找到什么。

然而,通过能够对md设备进行分区而获得的灵活性,我认为可以忽略不计,因为您可以改为在物理设备上创建多个分区并创建多个md设备。

多个md未分区的md设备比一个分区的设备为您提供更多的灵活性。当需要更换一种底层介质时,您有更多的自由,您可以md使用不同的 RAID 级别配置不同的设备。

例如,如果您有 6 个磁盘,则可以/boot将 RAID-1 设置为在每个磁盘上都有一个副本。/可以是在三个磁盘上有副本的 RAID-1,在其他三个磁盘上有副本的 RAID-1 可以用于交换。剩余空间可能是跨所有六个磁盘的大型 RAID-6。