如果你是ubuntu和windows多系統,當你重新安裝windows後,就會使MBR中只存在windows的起動選項,沒有了ubuntu的grub,導致你無法進入ubuntu系統,但你可以用如下方法解決:
用ubuntu的LIVECD(即安裝光碟片)啟動,進入livecd系統,開啟終端
輸入sudo grub
斷行符號
然後輸入:
grub> find /boot/grub/stage1
註:這裡是數字1,不是英文小寫L,前面的“grub〉”為提示符,不需要輸入 ,下同
輸出如下:
(hd0,1)
註:在ubuntu7.04以後的版本會出現find不到結果的現象,可能是因為這種版本用/dev/sda來表示分區的原因,而grub是用hd0來表示造成不相容。所以需要你自己尋找/boot所在的分區號。另開一個終端,使用命令:
sudo fdisk -l
列出你所有的分區號。
1、如果/boot沒有單獨分區:那麼只需要知道/分區的分區號。比如/分區號為/dev/hda5,那麼我們所需要的結果就是(hd0,4)。
2、如果/boot單獨分區:那麼需要知道/boot分區的分區號。比如/boot分區號為/dev/hda8,那麼我們所需要的結果就是(hd0,7)。
然後輸入:
grub>root (hd0,1)
註:這裡的括弧中的內容就是剛才輸出的內容或者你自己尋找到的/boot所在分區的分區號,其中還是數字0和1。
grub>setup (hd0)
註:這裡的括弧中的內容為剛才輸出的內容中,逗號前面的內容。
如果結果類似下面的結果,那就是成功把grub安裝到了MBR。(分區號可能與你的不一致,沒問題。)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... yes
Checking if "/grub/stage2" exists... yes
Checking if "/grub/e2fs_stage1_5" exists... yes
Running "embed /grub/e2fs_stage1_5 (hd0)"... 17 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd0) (hd0)1+17 p (hd0,8)/grub/stage2 /grub/menu
.lst"... succeeded
Done.
輸入quit退出grub模式。
最後取出光碟片重新啟動即可看到熟悉的grub引導介面,然後就可以進入自己的ubuntu系統了。