1. 程式人生 > >Centos7 grub的配置檔案及排錯 (轉載)

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

相關推薦

Centos7 grub配置檔案 轉載

與Centos6不同Centos7採用的是grub2,而不是grub。在Centos7中,把grub的主要配置檔案放在以下三個地方。/boot/grub2/grub.cfg  (/etc/grub2.cfg 是/boot/grub2/grub.cfg 檔案的符號連結)/etc/grub.d//etc/

rhel7 grub 配置檔案

RHEL7 用了 grub2,而不再是 grub 了 MBR 分割槽的前 446 個位元組存放的是系統載入程式 grub,中間 64 位元組是分割槽表,最後 2 個字 節表示結束。那麼什麼是 grub 是怎麼工作的呢? 簡單的說,開機會經歷以下幾步: 1、BIOS 自檢,檢

Linux 開機啟動順序一些常見無法開機情況centos6

Linux系統排錯 Linux系統啟動流程 boot目錄的恢復 分區表信息的恢復 主扇區的恢復 Linux開機啟動順序 這個圖就很完整的介紹了Linux的開機啟動順序下面我就跟大家詳細介紹下開機的一個啟動流程第一步,加載BIOS當你打開計算機電源的時候,計算機就會首先加載BIOS信息,也就

Redis配置檔案 redis.conf 解讀

# Redis configuration file example# redis配置檔案模板# Note on units: when memory size is need

Centos7.5配置主DNS服務器

火墻 設置 file linux blog .com chroot named 成功 本篇文章我們介紹下Centos7.5系統上配置DNS服務器,實驗拓撲如下: 首先我們需要準備2臺Centos系統並配置好YUM倉庫,設置好主機名、網絡,關閉防火墻、Selinux等。 兩

Centos7.5配置DNS特殊解析應用

本例項要求掌握兩種常用DNS特殊解析的配置及驗證,完成下列任務: 為站點 www.51cto.com 實現輪詢解析(1.1.1.1-3) 配置泛域名解析(任意名稱.51cto.com --> 192.168.2.100) 上篇文章我們已經講過配置DNS伺服器相關軟體包bind、b

Flutter安裝、配置demo執行Mac

一、安裝、環境變數配置 (1)搭建臨時映象 export PUB_HOSTED_URL=https://pub.flutter-io.cn export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn 注:mac

Spring Boot 配置檔案 yml與properties

1、配置檔案 SpringBoot使用一個全域性的配置檔案,配置檔名是固定的; •application.properties •application.yml 配置檔案的作用:修改SpringBoot自動配置的預設值;SpringBoot在底層都給我們自動配

史上最全web.xml配置檔案元素詳解轉載防丟

web.xml配置檔案常用元素及其意義預覽 1 <web-app> 2 3 <!--定義了WEB應用的名字--> 4 <display-name></display-name> 5

jfinal的配置檔案例項詳解

1、去官網下載最新的jar包(我這是JFinal-lib-2.2) tomcat+mysql 所需要的jar 2、配置web.xml <filter> <filter-name>jfinal</filter-name>

Linux系統常見

Linux作業系統的開機過程:從BIOS開始,然後進入Boot Loader,再載入系統核心,然後核心進行初始化,最後啟動初始化程序。 更改root使用者密碼 開機按上下鍵停止讀秒 按 ’e‘進入編輯模式 上下鍵 到linux16 /boot/vmlinuz-x

windows下vs2013配置caffe基本使用

目前已經用python程式碼搭建了CNN來做目標分類、檢測、分割(用python搭建速度快,非常方便)。之後又轉用tensorflow的C++ API來搭建CNN重新實現一遍目標分類、檢測、分割(執行效率高)。現在再轉用caffe實現一遍。先從配置說起。1.準備環境(1) V

Redis 單例、主從模式、sentinel 以及集群的配置方式優缺點對比

after redis使用 問題: known 不能 重新 aof left meet 摘要: redis作為一種NoSql數據庫,其提供了一種高效的緩存方案,本文則主要對其單例,主從模式,sentinel以及集群的配置方式進行說明,對比其優缺點,闡述redis作為一種

【Gin-API系列】配置檔案和資料庫操作

我們前面已經實現了API的基礎版本,能對引數校驗和返回指定資料,這一章,我們將對主機和交換機進行建模,存入資料庫。 考慮到資料庫安裝和使用的簡便性,我們採用文件儲存結構的MongoDB資料庫。 > Mongo資料庫下載安裝,安裝後不用設定密碼,直接使用即可 下載連結 [https://www.file

Uber使用Swift重寫APP的踩坑經歷解決方案轉載

result 框架 退出 帶來 hole 懶漢 將在 例子 穩定 本文出自Uber移動架構和框架組負責人托馬斯·阿特曼於2016年在灣區Swift峰會上的演講,分享了使用Swfit重寫Uber的好與壞。以下為譯文: 我是托馬斯·阿特曼,目前是Uber移動架構和框架組負責人。

借助Service Worker和cacheStorage緩存離線開發 轉載

rdp 方式介紹 所有應用 turn 出現 前端 pro 收益 var 一、緩存和離線開發 說得HTML5離線開發,我們通常第一反應是使用html5 manifest緩存技術,此技術已經出現很多年了,我以前多次了解過,也見過一些實踐案例,但是卻從未在博客中介紹過,因為並不

sort()的用法,參數以排序原理轉載

comment https params HA 排序函數 根據 字符 type ring sort() 方法用於對數組的元素進行排序,並返回數組。默認排序順序是根據字符串Unicode碼點。語法:arrayObject.sort(sortby);參數sortby可選。規定排

HashMap實現原理原始碼分析轉載

作者: dreamcatcher-cx 出處: <http://www.cnblogs.com/chengxiao/>        雜湊表(hash table)也叫散列表,是一種非常重要的資料結構,應用場景及其豐富,

OSX High Sierra 遇到一些問題解決方法轉載

OSX的High Sierra正式版出來半個月有餘,聽著什麼自媒體、科技媒體吹這系統多麼牛B,手賤點了升級,好在升級過程中沒有遇到各種坑還挺順利的,但是我沒有感覺多麼好用的同時,卻給我帶來不大不小的麻煩。且聽我一一道來…… 10.13版本加強了許可權的限制,

Android8.0新特性開發指南轉載

背景介紹谷歌2017 I/O開發者大會今年將於5月17-19日在美國加州舉辦。大會將跟往年一樣釋出最新的 Android 系統,今年為 Android 8.0。谷歌在今年3 月21日釋出 Android 新系統開發者預覽版時已給新系統取名為 Android O。自2008 年