系統(tǒng)管理:使用UbuntuLiveCD安裝grub

字號(hào):

一、安裝到mbr(mbr=Master Boot Records,主引導(dǎo)記錄區(qū))
    因?yàn)榘惭bwindows,或者不小心刪除/改變了mbr,都有可能導(dǎo)致啟動(dòng)時(shí)看不到grub的引導(dǎo)菜單或者提示出錯(cuò),下面是恢復(fù)的辦法
    (寫于Ubuntu下,但應(yīng)該可適用于其它系統(tǒng))
    使用Ubuntu livdCD啟動(dòng),出現(xiàn)桌面后,打開一個(gè)終端,輸入:
    sudo grub
    然后在grub>下輸入
    grub>find /boot/grub/stage1
    查找到grub的文件所處的位置,如果安裝了多個(gè)linux系統(tǒng),會(huì)全部顯示出來(lái),看好Ubuntu的/boot/grub/所在的位置,然后
    grub>root (hd?,?)
    (hd?,?)中的問(wèn)號(hào)用Ubuntu下的/boot/grub/位置取代,比如上面的find命令查找結(jié)果是hd(0,1),那這兒就是root(hd0,1)
    使用下面的命令把grub安裝到mbr上:
    grub>setup (hd0)
    退出
    grub>quit
    解釋一下:
    sudo grub得到grub命令解釋器
    find /boot/grub/stage1用來(lái)查找stage1文件的位置,它告訴我們grub的文件在哪兒。只有一小部分grub放在mbr上,其它部分位于你的boot文件夾。grub需要這些文件來(lái)安裝。
    最后setup(hd0)把grub安裝到hd0。當(dāng)使用hd0參數(shù)而沒有提供具體分區(qū)時(shí),grub安裝到mbr。grub認(rèn)為hd0是第一個(gè)硬盤的mbr區(qū)標(biāo)志。
    二、安裝到其它分區(qū)
    thanks to 5-HT
    如果想把grub安裝到一個(gè)分區(qū)而不是mbr上,把setup (hd0)改成setup (hdx,y)。X表示是第幾塊硬盤,Y是這塊硬盤上的第幾個(gè)分區(qū)。grub的計(jì)數(shù)方法是從0開始(如hd0,1表示第一塊硬盤上的第2個(gè)分區(qū))
    三、如果grub找不到stage1文件或認(rèn)不出硬盤
    thanks to TOSK
    1.使用livdCD加載/root分區(qū)
    sudo mkdir /mnt/root
    sudo mount -t ext3 /dev/sda6 /mnt/root
    2.在/mnt/root下加載proc與udev
    sudo mount -t proc none /mnt/root/proc
    sudo mount -o bind /dev /mnt/root/dev
    這樣grub能認(rèn)出你的驅(qū)動(dòng)器樂(lè)。下一步:
    sudo chroot /mnt/root /bin/bash
    關(guān)于chroot,參見:
    什么是chroot
    linuxfocus.org/ChineseGB/January2002/article225.shtml" target=_blank>chroot linux中所有的服務(wù)
    然后如果想安裝grub到mbr上
    (一)安裝到mbr上,這臺(tái)機(jī)器上有3個(gè)os,都能良好運(yùn)行。
    (二)安裝到一個(gè)分區(qū),這臺(tái)機(jī)器上也有3個(gè)os,俺安裝到hd(2,0)上,結(jié)果剛開始時(shí)grub菜單沒出現(xiàn),因?yàn)殡娔X是默認(rèn)從hd0上找啟動(dòng)器的,后來(lái)改成從hd2啟動(dòng),就解決問(wèn)題了。