2003年1月10日 星期五

Linux Boot Loader 故障排除 troubleshooting

Linux 早期版本有時會遇到開機時會無法順利開機, 可能是因為安裝多重系統時 Windows 作業系統將 MBR 給清掉, 或是 Linux 的 boot loader 設定有問題, 這時就需要系統安裝時所使用的安裝光碟來執行修復

1. 將安裝光碟第一片放入光碟機開機, 出現操作畫面時不要先按 Enter, 先輸入 linux rescue 再按 Enter 執行修復模式

2. 接著出現選擇語言時建議選英文, 因為之後修復模式用不到中文

3. 鍵盤類型選擇 us(美國)

4. 這裡說到修復模式中會將所安裝的Linux系統所有檔案掛載在這個臨時 /mnt/sysimage 中, 按下 Continue 可將這個掛載轉換成可讀寫狀態以做修改或其他動作, 或者按下 Read-Only 保持只能讀的狀態

5. 按下 Continue 後, 如果要將掛載的原來系統所有檔案擁有 root (管理者)權限屬性, 則下 chroot /mnt/sysimage 指令來轉換

6. 接著就進入到這個修復模式的臨時Shell環境

7. 我的習慣是, 先檢查一下硬碟分割區, 看看硬碟分割有沒有問題, 使用 fdisk -l 指令檢查

8. 接著指令 mount 查看掛載的檔案系統, 不過此時還是在修復模式的臨時掛載中

9. 查看一下臨時掛載中的根目錄

10. 接著執行 chroot /mnt/sysimage 指令, 將臨時環境目錄轉成原始環境目錄, 並取得 root 權限

11. 用 ls 指令比較一下轉換前與轉換後的根目錄狀況, 確認已經將原來安裝的 Linux 系統目錄全掛載且擁有 root 權限去修改

12. 如果是 LILO 錯誤:
早期 Linux 使用文字模式 LILO 時比較會發生 LILO 載入不順的問題, lilo 會出現缺字狀況, 後來使用圖型模式 LILO 比較少發生這個狀況
編輯 /etc/lilo.conf
之後下指令 lilo -v, 將 boot loader 寫入 MBR, 重新開機後就能恢復正常

13. 如果是 GRUB 錯誤:
編輯 /boot/grub/grub.conf
之後下指令 grub-install /dev/hda, 將 boot loader 寫入 MBR, 重新開機後就能恢復正常

沒有留言:

張貼留言