歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 10.10下修復“The symbol grub xputs not found”問題

Ubuntu 10.10下修復“The symbol grub xputs not found”問題

日期:2017/2/28 16:17:00   编辑:Linux教程

把自己的Ubuntu系統從10.04升級到了10.10。升級的過程非常的順利,一切就緒後重啟,杯具了,啟動到Grub界面的時候黑了,出現了一行 "The symbol grub xputs not found", 緊接著就是 "grub rescue>" 和一閃一閃的光標,提示著系統進不去。

我當時就傻了,grub在我毫無反應的情況下掛了。可是想想不對啊,自己前不久才將公司的機器升級,怎麼自己的電腦就杯具了呢?想來想去,公司和家裡的電腦唯一的區別就是grub版本不同。公司的是grub,而家裡的則是grub 2。看來,問題是出在grub 2上了。

可能很多人已經聽說過grub 2的大名。一個引導程序,現在已經像一門語言了。自打把它升級之後就從來沒有認真的研究過,看來這家伙是要給我來個下馬威了。不行,系統還是要進的,所以立刻用另外的電腦上網,google。一個小時之後,問題解決(本來差不多20分鐘左右就可以,可惜繞彎路了)。下面把這次的問題解決辦法記下來,萬一下次需要呢。

我使用的方法是從LiveCD重新安裝Grub 2。當然這個方法需要你手中有LiveCD,否則的話,待會兒再說。

利用LiveCD啟動電腦,選擇Try it 。。。 那個選項進入光盤上提供的那個系統。
啟動終端(控制台),就是那個背景是黑黑的,可以輸入命令的那個。
這一步是用來尋找你的系統分區的。如果你知道的話,這步可以跳過:
輸入 "fdisk -l" (是L的小寫,不是1),找格式是ext3/ext4的,這個就是你的Linux分區。然後看著它的block大小來回憶,那個是你的根節點(就是 "/" 掛載點)。
特別注意:回想一下你是否當年在安裝系統的時候單獨分出了/boot節點,www.linuxidc.com判斷這個的方法有兩個,第一是回憶當年安裝系統的時候,在分區時是否專門設置過 "/boot" 掛載點;第二,就是看看剛才查詢的結果中是不是有一個100M左右大小的ext3/ext4的block,如果有的話,很有可能就是了。
掛載我們找到的分區:
sudo mount /dev/sdXY /mnt

解釋一下上面的sdXY,這裡X代表a,b,。。。而Y代表1,2,。。。合在一起就是代表sda1,sda2,sdb3,。。。。,這個是根據你上一步中找到的根節點而定的。

另外,還有一個重要問題就是,如果在上一步中,你想起了你的 "/boot" 單獨創建過的話,那麼你還需要將它掛在上來:

sudo mount /dev/sdXY /mnt/boot

這裡sdXY是指你的/boot分區,別搞混了。

掛載完之後,打開你的/mnt和/mnt/boot看一下,是不是你的系統,不是就老老實實的在回想回想。是的話就下一步。
執行下面的語句重裝grub 2:
sudo grub-install --root-directory=/mnt /dev/sdX

再解釋一下,這裡sdX的X是指a,b,。。。如果你的引導盤是sda的話,那麼上面就是sda,以此類推。

最後卸載我們上面的掛載點:
sudo umount /mnt/boot //如果你執行/mnt/boot的掛載了,那麼先卸載它
sudo umount /mnt

重啟

執行完上面這些之後,我的電腦可以正常引導了。我希望你的也是,祝你好運。

Copyright © Linux教程網 All Rights Reserved