本節索引
故障描述
解決思路
故障判定
故障解決流程
故障描述
/boot分區被損壞。
/etc/fstab文件被誤刪除。
由於/boot分區被損壞,所以導致grub無法引導操作系統。/etc/fstab文件被誤刪導致在進入Rescue模式原操作系統不會被自動掛載至/mnt/sysimg下。
解決思路
首先恢復fstab文件,使救援模式能夠識別原操作系統。
恢復系統引導所需的grub文件。
恢復系統啓動所需的內核文件和虛擬磁盤文件
故障判定
磁盤主引導記錄被損壞現象:
直接跳過磁盤啓動,從其他啓動項啓動(光盤或者網絡)
系統從磁盤啓動,但停滯在如下階段。
Grub引導1_5階段出錯,導致無法進入grub的2階段的啓動菜單界面
解決思路,修復grub
故障解決流程
準備工作:
與操作系統版本相同的光盤
開機後選擇從光驅引導
選擇語言
選擇鍵盤類型
配置網絡
選擇開啓救援模式
開啓救援後,會試圖把原來的Linux系統掛載在/mnt/sysimage目錄下由於原來系統下沒有/etc/fstab文件,所以救援模式無法掛載分區至/mnt/sysimg下。回車,開啓一個shell命令行
查看原來系統所在磁盤
分區使用fdisk 命令查看原來系統所在磁盤的分區詳細信息。
從結果可以看出,/dev/sda1的boot字段有*標識,表示該分區爲boot分區;
/dev/sda5的分區類型爲swap,表示該分區爲swap分區;
其他分區從fdisk的返回結果暫時無法確定其掛載點是什麼。
編輯一個fstab文件
在原系統的根分區下編輯一個fstab文件,路徑爲/mnt/tmp/etc/fstab
恢復boot目錄內容
切換根分區
sh-4.1# chroot /mnt/sysimage
掛載光盤重
sh-4.1# mount /dev/cdrom /mnt
新安裝內核
sh-4.1# rpm –ivh /mnt/Packages/kernel-2.6.32-696.el6.x86_64.rpm --force
修復grub
sh-4.1# grub-install /dev/sda
創建grub.conf文件
在/boot/grub下創建一個grub.conf文件,內容至少包括下圖幾項
default :若啓動菜單爲多個,默認從哪個啓動
timeout:在達到時間無指令打斷後默認啓動
title:菜單內容,用戶可自定義
kernel: 內核文件路徑
initrd: 虛擬文件系統路徑
*注意 kernel 和initrd的路徑都是以/boot爲根
即:/boot=/
eq: /boot/vmlinuz-2.6.32-696.el6.x86_64 = /vmlinuz-2.6.32-696.el6.x86_64
引導之後會出現Selinux的檢查階段,耗時會很久,請耐心等待