GRUB是多操作系統的啟動程序,GRUB 2相對GRUB增加了不少新功能,比GRUB更加實用,不少朋友Linux系統操作中,會遇到GRUB 2啟動失敗的問題,下面小編就給大家介紹下Linux GRUB2啟動失敗的解決方法。
update-grub腳本可以可靠的檢測內核、啟動文件,並添加所有的操作系統,自動生成你的啟動菜單,所以你不必手動的修改他們。
我們還要學習如何解決兩個常見的故障。當啟動系統時,它會停在grub》提示上,這是一個完整的GRUB 2命令界面,所以不要驚慌。這意味著GRUB 2依舊可以正常啟動和加載normal.mod模塊(它和其他模塊分別位於/boot/grub/[架構]/ 下),但沒有找到你的grub.cfg文件。如果你看到grub rescue》 這意味著它無法找到normal.mod,因此它有可能找不到你的啟動文件。
這是如何發生的?因為內核可能改變驅動器分區號碼的分配,或者您移動了您的硬盤驅動器,或者你手動改變一些分區,也有可能是安裝一個新的操作系統或者移動一些文件。在這些情況下你的啟動文件仍然存在,但GRUB不能找到他們。所以你可以在GRUB提示符中找到啟動文件,設置它們的位置,然後啟動您的系統並修復GRUB配置。
GRUB 2 命令行
GRUB 2 的命令界面和上一代GRUB中的一樣強大。你可以用它來找到引導鏡像,內核和根文件系統。事實上,它可以讓你避開權限和其它訪問控制,完全訪問本地計算機上的所有文件。有些人可能會認為這是一個安全漏洞,但是你知道古老的UNIX的名言:有物理訪問機器權限的人,就是擁有它的人。
當你在grub 》提示時,你有許多類似命令行界面的功能,如命令歷史和tab補全。但是grub rescue》模式是受限的,沒有命令歷史,沒有tab補全。
如果你是在一個正常運作的系統上練習,那就當GRUB菜單出現時,可以按下C來打開GRUB命令行界面。你可以通過向上和向下光標鍵滾動你的菜單條目來停止啟動倒計時。在GRUB命令行下做實驗是安全的,因為做不了永久的修改,一切都是暫時的。如果你已經看到grub 》或grub rescue》提示符,那就說明你的表現時刻到了。
接下來的幾個命令可以在grub》和grub rescue模式下運行。你應該運行的第一個命令是設置一個分頁器,將長的命令分頁。如下:
grub》set pager=1
等號兩側必須不能出現空格。現在讓我們做一點探索。輸入ls來列出的GRUB識別的所有分區:
grub》 ls
(hd0)(hd0,msdos2)(hd0,msdos1)
msdos是什麼?這意味著該系統具有老式的MS-DOS分區表,而不是全新的全局唯一標識符的分區表(GPT)。如果你正在運行的GPT,它會出現(hd0,GPT1)。現在讓我們看看,使用ls命令查看你的系統裡面有什麼文件:
grub》 ls (hd0,1)/
lost+found/ bin/ boot/ cdrom/ dev/ etc/ home/ lib/
lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/
srv/ sys/ tmp/ usr/var/ vmlinuz vmlinuz.old
initrd.img initrd.img.old
太好了,我們已經找到了根文件系統。你可以省略msdos和GPT的標簽。如果沒有加分區後面的斜槓/,則只會列出分區的信息。你可以用cat命令顯示文件系統上的任何文件:
grub》 cat (hd0,1)/etc/issue
Ubuntu14.04 LTS \n \l
在一個多引導系統上,通過/etc/issue文件可以知道這是哪個Linux系統。
 12 共2頁