1. 程式人生 > >CentOS grub修復

CentOS grub修復

一、
grub全稱在為GRand Unified Bootloader,它的核心功能是引導核心,但是如果grub出了問題,核心無法找到,那豈不是萬劫不復了,下面就介紹一下常用的修復方式。如果想了解grub是什麼在系統中啟到什麼作用,詳細介紹請參閱http://essun.blog.51cto.com/721033/1366045
第一種情況:
是由於grub中的grub.conf檔案損壞,開機後直接進入到了grub>命令列模式下。下面將圖解此過程
在這裡插入圖片描述
這時可以使用help看一下grub可支援命令有那些,以便供修復時使用。
在這裡插入圖片描述
第二個使用的命令是find (hd0,0)/按tab如果能補全就表示系統在此分割槽上。
在這裡插入圖片描述


各個引數說明:
在這裡插入圖片描述
注意:當你指定核心後,但未指定核心後面的引數(ro root=(此處未指定的話))將無法正常啟動
報:請給root引數,一般情況下是系統是可以自動探測到,但這個功能並不靠譜,那麼只能靠備份或記憶將引數補上。
(所以定期備份/etc/fstab、與grub.conf、是多麼重要的事情。)如下圖:
在這裡插入圖片描述
而這時就看到你平時的習慣了,備份相當重要在這裡插入圖片描述
當正常登入系統後,將grub.conf檔案重新寫就可以了。(上圖的完整路徑是root=/dev/mapper/vg_www-lv_root,寫全了就看不到了,所以在此特別說明)在這裡插入圖片描述
看到title了吧
在這裡插入圖片描述
過了下面這張圖就說明系統是可以正常啟動了在這裡插入圖片描述
第一種情況順利解決!
第二種情況:
grub損壞(最明顯的提示為:Operating System not found)
如mbr資料損壞(注僅是bootloader損壞,分割槽表是好的),如果沒有重新啟動還可能修復,但是如果是重啟後發現grub損壞,那麼只能掛載光碟進入緊急救援模式。(以下將以掛載光碟說明)
在這裡插入圖片描述

dd執行之後的景象,是不是好驚悚
在這裡插入圖片描述
掛載光碟進入緊急救援模式,在BIOS中將光碟設定為第一引導裝置。在這裡插入圖片描述
在選單中選擇"Rescue installed system"
在這裡插入圖片描述
之後將對:語言----》鍵盤設定
在這裡插入圖片描述
是否啟用網路(不需要,則No,如果選擇了Yes將要求選擇獲取IP地址的方式)
在這裡插入圖片描述
正式進入救援模式
在這裡插入圖片描述
原系統己經掛載的位置,如何切換到原系統下
在這裡插入圖片描述
開啟一個shell
在這裡插入圖片描述
切換到原系統
在這裡插入圖片描述
這時可以直接輸入grub命令進入grub中(這個grub是光碟中的)
在這裡插入圖片描述
直接使用 help setup會顯示setup的使用方法。
設定root(root預設分割槽)如(hd0,0),此分割槽一定要root所在的系統分割槽,之後使用setup安裝,命令是setup(hd0)(由於mbr並屬於分割槽,所以將grub安裝到hd0裝置即可),如果是成功了會有succeeded提示。quit退出即可
在這裡插入圖片描述

重啟系統,取出光碟,有如下資訊就表示修復完成
在這裡插入圖片描述
如果grub目錄都損壞,無法正常啟動。則可以在此模式使用grub-install --root-directory=/ /dev/sda(裝置是什麼就寫什麼)手寫配置檔案grub.conf即可
二、
CentOS進入單使用者模式
1.centos怎麼讓進入GRUB 選單介面?
Linux開機引導的時候,按鍵盤上的e 就可以進入進入GRUB選單介面。
2.在出現GRUB引導畫面時(CentOS(2.6.18-274**)),按字母e鍵,進入GRUB編輯狀態。
3.把游標移動到kernel …那一行,再敲入“e”進入命令列編輯,在kernel 一行的最後加上空格single,回車敲入“b”,啟動系統,即進入單使用者模式,
4.這個時候就可以用passwd命令改密碼了。
passwd root
改完以後reboot重啟