我即将重新初始化我的 (SW) raid 阵列。
以前的阵列是带有 4 个磁盘的 raid5。我删除了一个磁盘以安装新的附加(更大)驱动器。
我理想中想做的是在 3 个磁盘上混合类型的 raid。有 1 个 3 路镜像 raid1 的部分、raid5 的一部分和 raid0 的一部分,为我的或多或少重要文件提供不同级别的保护,同时浪费尽可能少的空间。
我可以通过在每个磁盘上创建 3 个独立的 raid 分区并从中组装 3 个阵列来实现此目的,但这有许多缺点:
- 每个部分的大小从一开始就是固定的,改变它会相当棘手
- 我会限制我的目录布局选项,并可能最终求助于符号链接来保留逻辑布局
我真正想要的是一个单一的文件系统,我可以在其中设置单个文件/目录的属性,指示这些文件所需的保护级别,从而导致文件被适当地镜像。
有没有办法在 SUSE 上实现这一点,也许使用深奥的文件系统格式?
答案1
一种可能的解决方案是使用 LVM 来管理冗余,而不是使用mdadm
Linux 软件 RAID。
只需将所有三个磁盘初始化为 LVM 物理卷,将它们分配到同一卷组,并在设置逻辑卷时使用正确的标志即可。
-m, --mirrors Mirrors
创建具有镜像副本的镜像逻辑卷。例如,指定 -m1 将产生具有两侧的镜像;即线性卷加一份副本。
例如,命令lvcreate -m1 -L 10G -n <name> <volume_group>
行将创建镜像逻辑卷或 RAID1 阵列的等效项。
-i, --stripes Stripes
给出条纹数。这等于分散逻辑卷的物理卷的数量。创建 RAID 4/5/6 逻辑卷时,会在内部考虑奇偶校验所需的额外设备。指定 -i3 将为条带逻辑卷使用 3 个设备,为 RAID 4/5 使用 4 个设备,为 RAID 6 使用 5 个设备。
由于您有三个磁盘,因此最大条带数为 2(第三个用于奇偶校验),并且lvcreate --type raid5 -i2 -L 20G -n <name> <volume_group>
将设置相当于三个磁盘的 RAID5 阵列。