Debian

使用 ICH9 晶片組升級到 Debian/Jessie 後修復 RAID 配置

  • October 11, 2015

我從 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.

儘管在 BIOS 中禁用了板載 RAID 控制器。當我使用 KNOPPIX (7.0.5) 訪問磁碟時,我可以毫無問題地訪問和同步分區(sda1、sdc1)。所以我猜:

  • 過去一段時間使用板載 RAID 控制器創建了 RAID 磁碟
  • 由於 debian 不支持 ICH9 晶片組,因此在 BIOS 中禁用了對此的支持
  • Jessie 似乎不僅查看分區的超級塊,還查看磁碟的超級塊並且因為它們相同而失敗?

我應該如何解決這個問題?

  • 在 BIOS 中啟用 ICH9 raid 重新同步那裡的磁碟?系統會啟動嗎?
  • 使用磁碟上的 mdadm 將超級塊清零

最後我自己找到了解決方案。因此,對於遇到類似問題的任何人:

首先,我使用 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

引用自:https://unix.stackexchange.com/questions/235188