linux系統救援模式解決開機引導失敗問題


問題:linux開機后進入grub命令行且grub命令行輸入命令報錯

推測:因之前系統裝好以后改變過分區,而導致不能讀取到grub主開機引導程序

在解決這個問題之前我們先來了解linux開機啟動過程。

linux系統開機啟動有以下過程

1.開機加載BIOS

2.進入MBR(master boot record)主引導記錄:MBR中主要是安裝加載引導程序,如主流的grub(既支持win也支持linux)。它是可引導設備的第一個扇區(一般情況下是硬盤中的第一扇區)中的主引導分區 

3.讀取運行grub主引導程序:grub主要是識別磁盤格式,用於載入並啟動操作系統核心(Kernel)。多操作系統時可以通過配置grub而引導系統啟動。

4.啟動init進程完成系統啟動;據我所知有兩種方式init方式。System V  initialization方式和Upstart方式。(具體方式的運行模式自行百度)

  linux開機引導過程大致分為以上幾步。

知道了開機啟動大致過程,我們針對遇到的問題可以判斷問題出在grub主引導程序上。

下面我們將使用系統盤進入linux救援模式修復grub引導程序。

1.放入linux裝機光盤並選擇以光盤啟動

2.選擇Rescue installed system 救援模式進入

3.語言選擇默認英語,鍵盤選擇us

4.根據需要選擇是否聯網,這里不需要聯網

5.進入到Rescue界面,如果選擇Continue按鈕並回車則救援模式程序會自動查找系統中已有的文件系統,並把他們掛載到/mnt/sysimage目錄下;如果選擇Read-Only並回車,則會以只讀的方式掛載已有的文件系統,如果需要手動掛載則選Skip

6.之后有三種模式選擇 我們選擇進入shell模式並根據之前提示輸入chroot  /mnt/sysimage命令    (fakd為診斷模式)

7.輸入grub進入grub命令行

8.在grub命令行中輸入:root(hdx,y)

  其中x為安裝linux根分區所在的盤,比如只有一個硬盤那x就是0,linux根分區在第二個硬盤上x就為1.

  其中y為安裝linux系統所在的根分區

  我這里輸入的是root(hd0,0)

9.輸入setup(hd0)

          setup(hd0)就是把grub寫入到硬盤的MBR上,顯示succeeded就說明寫入修復成功。

10.退出重啟機器,系統開機引導成功。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM