The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

在有使用 Software RAID 的情況下重新安裝 GRUB 的方式

前天公司有一台 Linux 出問題,中午的時候莫名的當機,請機房重開機後發現畫面就只出現 "GRUB" 四個字,然後一動也不動的,不得已只好殺到內湖機房趕快緊急檢修。

首先,我先檢查 BIOS 設定沒問題,然後再用 Live CD 開機成功後,原本的硬碟也都可以 mount 上去,所以可見原本的硬碟應該都沒壞,只是 GRUB 不知道什麼原因壞掉了,所以我接下來就是要嘗試重新安裝 GRUB 恢復開機功能。

我使用 grub-install 安裝的結果是失敗的(因為我用的是 SATA 的硬碟,所以設備路徑是 /dev/sda ):

# grub-install /dev/sda
/dev/sda does not have any corresponding BIOS drive.

然後再使用 --recheck 參數還是一樣失敗:

# grub-install --recheck /dev/sda
Probing devices to guess BIOS drives. This may take a long time.
/dev/sda does not have any corresponding BIOS drive.

大概試了一個小時左右,就是無法成功安裝 GRUB。

最後,我在這裡找到了解答,嘗試用 grub 工具直接將我這台主機上使用 Software RAID 1 的兩顆硬碟分別寫入 GRUB:

# grub --batch --device-map=/boot/grub/device.map --config-file=/boot/grub/grub.conf --no-floppy   
grub> root (hd0,0)
grub> setup (hd0)
grub> root (hd1,0)
grub> setup (hd1)
grub> quit

備註:setup 指令就是將 GRUB 寫入硬碟的 MBR 區段,讓硬碟能開機,因為我使用 RAID 1 所以兩顆硬碟都要寫入才行。

寫入 GRUB 到兩顆硬碟,並重開機後,我的 Linux 終於能夠開機了!^_^