升级到带有 ICH9 芯片组的 Debian/Jessie 后修复 RAID 配置

升级到带有 ICH9 芯片组的 Debian/Jessie 后修复 RAID 配置

我从 Squeeze 升级到 Wheezy,没有出现任何问题。但升级到 Jessie 后,系统无法再启动(使用 LILO)。

LILO
ERROR: Duplicated Volume ID
O 24.1 Loading Linux ....(snip)
BIOS data check successful
Loading, please wait
[   14.948425] end_request: I/O error, dev fd0, sector 0
mdadm: /dev/md3 has been started with 1 drive (out of 2).
[   27.196906] end_request: I/O error, dev fd0, sector 0

...剪断

modprobe: module unknown not found in modules.dep
fsck from util-linux 2.25.2
mount: mounting /dev/root on /root failed: No such file or directory

...ETC。

我进入 (initramfs) 提示符

当我尝试列出其中一个 RAID 磁盘的分区时,它们没有显示。

(initramfs) ls /dev/sda*
/dev/sda

检查磁盘说

(initramfs) mdadm --examine /dev/sda
/dev/sda:
          Magic : Intel Raid ISM Cfg Sig.

虽然板载 RAID 控制器在 BIOS 中被禁用。当我使用 KNOPPIX (7.0.5) 访问磁盘时,我可以毫无问题地访问和同步分区(sda1、sdc1)。所以我猜:

  • RAID 磁盘是在过去使用板载 RAID 控制器创建的
  • 由于 debian 不支持 ICH9 芯片组,因此 BIOS 中禁用了对此的支持
  • Jessie 似乎不仅查看分区的超级块,还查看磁盘的超级块,并且失败,因为它们是相同的?

我应该如何解决这个问题?

  • 在 BIOS 中启用 ICH9 raid 重新同步磁盘吗?系统会启动吗?
  • 使用磁盘上的 mdadm 将超级块清零

答案1

最后我自己找到了解决方案。因此,对于遇到类似问题的任何人:

首先,我使用 live CD 对不工作的 raid 磁盘进行了完整的磁盘转储。

dd if=/dev/sda bs=10M | gzip -1 > /some/backup/drive/sda.img.gz
dd if=/dev/sdc bs=10M | gzip -1 > /some/backup/drive/sdc.img.gz

我重新启动并从 Intel Raid util 中的阵列中删除了两个磁盘(BIOS 之后)。然后我用 live CD 再次启动。

dmraid 自动启动磁盘raid。所以我不得不停用它

dmraid -an

然后我检查了分区的状态

mdadm --examine /dev/sda1
mdadm --examine /dev/sdc1

sda 磁盘的超级块错误。我修复了它并激活了突袭。

mdadm --zero-superblock /dev/sda1
mdadm -A --run /dev/md0 /dev/sdc1
mdadm -add /dev/md0 /dev/sda1

相关内容