當你使用 SCSI 硬碟開機的時候,需要預先載入 SCSI module 到 initrd.img-KERNEL-VERSION 這個檔裡面。
今天升級了 kernel ,我有個習慣,升級了kernel馬上就重開機。結果機器果然開不了。
還好還有安裝光碟,安裝光碟也就是緊急開機光碟。光碟一放進去,還沒重開機,機器就開好了,然後就出現熟悉的 Login 畫面了。
然後我想用 mkinitrd ,卻發現沒有這個指令。查了查文件後有幾點:
1. kernel 2.6.13 之後,改用 mkinitramfs。
2. 修改 /etc/initramfs-tools/modules ,加入自己想要預載的 SCSI driver
(我加了 scsi_mod, sd_mod, aic7xxx)
3. 執行 update-initramfs -u (-u update an existing ramfs, 如果你要保留舊的請自行查閱 man update-initramfs)
4. 檢查 /boot/initrd.imgXXX ,你會發現有一個新檔,舊檔被自動備份為 initrd.imgXXX.bak
5.reboot for test