我在使用 mdadm 和生成 initrd 时遇到了问题。
我的一个磁盘出现了一些问题,因此 mdadm 突然开始检测到我的 raid1 阵列位于 hda、hdb2、hdb3 上 - 尽管它们实际上应该位于 hda+hdb1、hda+hdb2、hda+hdb3 上。如果我让 mdadm 进行 raid 自动检测,系统将从 hdb3 启动,不会出现问题(但每个阵列当然只使用 1 个驱动器)。当我想禁用阵列的损坏部分以正确启动并修复它时,问题就开始了。我创建了一个这样的文件:
DEVICE /dev/hdb*
ARRAY /dev/md0 devices=/dev/hdb1 ...
ARRAY /dev/md1 devices=/dev/hdb2 ...
ARRAY /dev/md2 devices=/dev/hdb3 ...
但当我运行 时update-initramfs -u
,我收到一条消息,指出根已打开/dev/md2
但未在我的 中定义mdadm.conf
。那里可能出了什么问题?我可以清楚地看到数组已定义...
答案1
启动命令:
mdadm --fail /to/faileddevice
mdadm --zero-superblock /to/faileddevice
然后读取结果