Centos7 grub的配置文件及排錯 (轉載)

    與Centos6不同Centos7採用的是grub2,而不是grub。在Centos7中,把grub的主要配置文件放在以下三個地方。

/boot/grub2/grub.cfg  (/etc/grub2.cfg 是/boot/grub2/grub.cfg 文件的符號鏈接)
/etc/grub.d/
/etc/default/grub
這三個配置文件之間的關係是 grub.cfg 裏通過 ####BEGIN ##### 這種格式按照順序調用 /etc/grub.d 裏面的腳本實現不同的功能。在  grub.d 目錄裏有很多數字開頭的腳本,按從小到大的順序執行。
Centos7 grub的配置文件及排錯
例如:在 /etc/grub2.cfg 文件裏調用 /etc/grub.d/10_linux 來配置不同內核,在這裏有2個menuentry(菜單入口),所以我們開機的時候會看見兩個默認選項,一個是普通模式,一個是救援模式。
Centos7 grub的配置文件及排錯
上圖是 /etc/default/grub 文件。和其他的腳本比較起來,非常簡單直觀了。後面會舉例如何修改(需要注意的是,最好不要直接去修改 /etc/grub2.cfg 文件。這個是因爲如果後期升級內核,所有的配置都會失效。如果需要自定義這個文件,我們可以修改對應的腳本或者 /etc/default/grub 文件,然後通過 grub2-mkconfig 重新生成 grub.cfg 文件。)
我們可以修改grub配置文件來進行一些簡單的配置。
例如:1.修改啓動等待時間
Centos7 默認啓動等待時間爲 5 秒,我們可以將其改爲3秒(注意,如果改爲-1,那麼每次啓動需要手動確認纔可以)
修改 /etc/default/grub 文件,如下圖所示:
Centos7 grub的配置文件及排錯
修改完成後重新編譯生成 grub.cfg 文件
Centos7 grub的配置文件及排錯
2.對 grub 進行加密
在開機界面時如果輸入e ,會打開編輯窗口,我們可以根據需要進入 rescue, emergency 或者 shell 模式。那麼如何對 grub 進行加密呢?
在 /etc/grub.d/00_header 文件的末尾,加入以下內容
Centos7 grub的配置文件及排錯
其中,“EOF” 可以自己定義。然後重新定義編碼文件
Centos7 grub的配置文件及排錯
重啓之後輸入e,就需要用戶和密碼才能進入編輯窗口了。
上面我們設置的是明文密碼。在 /etc/grub.d/00_header 文件內可以知道,那如何設置密文口令呢?
加密密碼由命令 grub2-mkpasswd-pbkdf2 生成
將生成的密碼符,添加到 /etc/grub.d/00_header 文件末尾
Centos7 grub的配置文件及排錯
3.修改root密碼
重啓系統,按e進入編輯模式
在 linux16 那一行的末尾加上以下信息
rd.break console=tty0
Centos7 grub的配置文件及排錯
按 ctrl+x 啓動
重新掛載文件系統
Centos7 grub的配置文件及排錯
改變根目錄
Centos7 grub的配置文件及排錯
修改root密碼
echo "123456" | passwd --stdin root
在根目錄下創建相關文件(用於重新標記 selinux 環境值) Centos7 grub的配置文件及排錯
使用exit(兩次),退出 系統將會重啓。

        開機排錯
        例如:1.grub 故障:比如把 MBR 的前 446 個字節都覆蓋了

Centos7 grub的配置文件及排錯
系統重啓後會出現以下故障
Centos7 grub的配置文件及排錯
開機的時候會自動嘗試從本地,光盤和網絡加載引導程序(如果光盤、網絡等引導失敗則會operatiing system not found);這裏是從我的光盤加載的,因爲本地的引導程序已經沒有了。
選擇 troubleshooting (排錯)
選擇 resure a red hat enterprise linux system
選擇 continue(注意有耐心多等一下,有的時候會卡個 10 秒纔有反應)
按照提示,切換根到本機的系統
Centos7 grub的配置文件及排錯
使用 fdisk -l 查看啓動分區是哪個,帶星號的就是。
重裝以下 grub2 到啓動分區即可
Centos7 grub的配置文件及排錯
重啓就OK了
2.如果grub引導沒問題,但我們把內核文件或 grub.cfg
配置文件刪除了該怎麼辦?
Centos7 grub的配置文件及排錯
重啓之後,直接進入 grub 的救援模式,這表明程序沒有問題,但引導文件找不到了
Centos7 grub的配置文件及排錯
和前面一樣,光盤啓動,切換到根目錄,掛載以下光盤到光盤掛載點,我們可以順便卡一下 /boot 目錄,發現裏面以及沒有東西了,內核文件和配置文件都沒了
Centos7 grub的配置文件及排錯
解決方法就是重新安裝內核,rpm 可以強行--force 覆蓋安裝。
Centos7 grub的配置文件及排錯
裝完內核之後,重新安裝grub2,輸入 grub2-install /dev/sda,庵後重新編譯一下 grub2 就行了
Centos7 grub的配置文件及排錯
重啓系統即可。


轉載自:http://blog.51cto.com/13554481/2055628

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章