来自 mdadm 手册页:
“创建 RAID5 阵列时,mdadm 将自动创建具有额外备用驱动器的降级阵列。这是因为将备用驱动器构建到降级阵列中通常比在非降级但不干净的阵列上重新同步奇偶校验更快。可以使用 --force 选项覆盖此功能。”
所以我有 4 个硬盘,我想将它们放入一个阵列...我使用的操作指南指定使用其中一个作为“备用”...
又名:
mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1
我不明白为什么会发生这种情况,我的假设是我最终会得到一个 3 驱动器阵列和一个热备用...如果我不想要那个并且我想要一个 4 驱动器阵列,我发现我可以使用 -force 选项来做到这一点...
我只是想知道为什么这是默认的以及我是否遗漏了什么......
提前致谢。
答案1
这种行为(使用备用设备)实际上对您来说是不可见的;它在那里说的是,它将做一些驱动器构建技巧,而不是在构建过程中扫描磁盘并构建奇偶校验通道(慢!),它将在三个设备上构建阵列并在事后投入最后一个设备,在后台进行奇偶校验构建。
您对命令问题的怀疑完全正确。如果您运行该命令,它将在 2 个磁盘上生成 3 个磁盘阵列,然后将作为临时热备用的第三个磁盘添加到阵列中……最后仍会剩下一个热备用磁盘。
相反,你会想要这个;mdadm 仍然会对热备用磁盘进行欺骗,但对你来说是不可见的(/proc/mdstat
创建后你会看到,它会立即跳转到将数据加载到第 4 个磁盘的过程):
mdadm --create --verbose /dev/md0 --level=5 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1