實測刪除/boot的後果及解決方法
刪除/boot的非常嚴重啦。以後一定要備份此目錄。刪除後重啟系統提示截圖如下:
GNU GRUB version 0.97 (637K lower / 2094976K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]
解決方法:
啟動時選擇BIOS設定,使用光碟啟動進入救援模式(進入過程可看文章http://blog.51cto.com/12107790/2298347 前面部分)
其中有一個介面很重要,如下
使用chroot /mnt/sysimage 切換到自己的系統下。
進行掛載光碟,mount /dev/sr0 /mnt.
使用rpm -ivh /mnt/Packages/kernel-2.6.32-432.e16.x86_64.rpm --root=/mnt/sysimage/ --force 安裝kernel核心
安裝完核心後,重啟進入BIOS從硬碟啟動進入grub介面(就是報錯的介面)後
使用
grub>root (hd0,) #此時兩次TAB鍵看到如下截圖
grub>root (hd0,0)/ #使用TAB看到如下截圖
vmliuz gurb initramfs資訊說明是/boot分割槽。
grub>root (hd0,4)/ #使用TAB鍵看到如下資訊 Possible files are: lost+found boot dev proc sys var tmp etc root selinux lib64 usr bin home lib media mnt opt sbin srv .autorelabel 說明是根目錄咯。一定要記錄此分割槽時/dev/sda5
grub>root (hd0,0) #繫結啟動分割槽 grub>kernel /vmliuz-2.6.32-431.e16.x86_64 ro root=/dev/sda5 #啟動核心為只讀模式,注意root是根分割槽 grub>initrd /initramfs-2.6.32-431.e16.x86_64.img #核心對映 grub>boot #啟動系統,開始恢復grub.conf檔案
注意 載入核心時一定要注意root的路徑要正確,否則會出現以下錯誤
dracut Warning: Signal caught! ?dracut Warning: Boot has faild. To debug this issue add "rdshell" to the kernel command line. ?Kernel panic - not syncing: Attempted to kill init! ?Pid: 1, comm: init Not tainted 2.6.32-504.e16.x86_64 #1 ?Call Trace: [<ffffffff815292bc] ? panic+0xa7/0x16f ? [<ffffffff815292bc] ? do_exit+0xa7/0x16f ? [<ffffffff815292bc] ? fput+0xa7/0x16f ? [<ffffffff815292bc] ? system_call_fastpath+0xa7/0x16f? ?