raid10:无法读取超级块

raid10:无法读取超级块

几分钟前,我有一个/dev/md0由 4 x 3TB 磁盘组成的正常运行的 raid 10 设备()。

我的操作系统(无头 ubuntu 服务器 14.04.1 lts)安装在与 raid 分开的 120GB SSD 上。

我读到过关于 noatime 的文章,它对 SSD 很有用(我对 SSD 还不熟悉),所以我进行了编辑,/etc/fstab将其添加noatime到我的 SSD 条目中。

然后我尝试重新启动无头服务器,但它会在启动过程中挂起,因为它无法/dev/md0/mnt/raiddisk:

The disk drive for /mnt/raiddisk is not ready yet or not present.
Continue to wait, or press S to skip mounting or M for manual recovery.

现在我已经通过跳过 raid 设备的安装来进行启动。

cat /proc/mdstat说:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : inactive sdd1[3](S) sdc1[2](S) sdb1[1](S)
8790402048 blocks super 1.2

unused devices: <none> 

上面的列表中缺少一个磁盘,应该还有 sde

尝试使用手动挂载sudo mount /dev/md0 /mnt/raiddisk给出以下输出:

mount: /dev/md0: can't read superblock

读了一些资料后我尝试过:

sudo mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1

并收到此消息:

mdadm: /dev/sdb1 is busy - skipping
mdadm: /dev/sdc1 is busy - skipping
mdadm: /dev/sdd1 is busy - skipping
mdadm: /dev/md0 is already in use.

于是我停下来/dev/md0并再次尝试,这次似乎成功了:

mdadm: /dev/md0 has been started with 4 drives.

现在cat /proc/mdstat给出:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid10 sda1[0] sdd1[3] sdc1[2] sdb1[1]
5860267008 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]

unused devices: <none>

我现在可以将其安装到/mnt/raiddisk

尝试重新启动时,它会再次挂起,因为它无法安装 raid 设备。

由于我是一名突袭新手,所以不确定还要测试/检查什么。

答案1

我能够修复它。

sudo parted -l在检查和的输出cat /proc/mdstat并查看后,我注意到在我尝试添加/etc/mdadm/mdadm.conf后硬盘的设备标签似乎发生了变化。noatime/etc/fstab

我的 SSD 以前有这个标签,/dev/sda后来改成了/dev/sde

因此 md 无法在启动时自动组装 raid 阵列,因为它无法添加/dev/sde到 raid,因为这现在是启动分区的 ssd。

更新mdadm.conf并添加更新的磁盘标签然后运行后,update-initramfs -u我能够正常重新启动,并且 raid 阵列已组装并安装。

我不知道为什么简单地添加noatime到我的 ssd 条目中/etc/fstab就会这样做。

从那以后我就不再noatime和我联系了/etc/fstab,因为我害怕这种事情再次发生。

相关内容