用Live CD啟動,同1,進入終端,先掛載Linux分區(qū)(X為安裝盤):
sudo mount /dev/sdaX /mnt
然后運行:
sudo grub-install /dev/sda –root-directory=/mnt
OK!如果不行或你的分區(qū)是EXT4或你裝的是GRUB2,請看——
4.(最極端的情況,有一次我就碰上了,搜了一晚的GOOGLE,終于找到了)分區(qū)是EXT4,或裝GRUB2:
先mount分區(qū),X為安裝分區(qū)(EXT4掛在Intrepid比較麻煩):
sudo apt-get install e2fsprogs
sudo tune2fs -E test_fs /dev/sdaX
sudo mount -t ext4dev /dev/sdaX /mnt
然后依次掛載proc,sys,dev(個人認為比較BT)
sudo mount -t proc proc /mnt/proc
sudo mount -t sysfs sys /mnt/sys
sudo mount -o bind /dev /mnt/dev
然后切換Terminal:
sudo chroot /mnt /bin/bash
然后執(zhí)行g(shù)rub-install即可!
grub-install /dev/sda –root-directory=/
5. (有時候某些人就是RP不好:D)終極殺手锏,不能算辦法的辦法:
http://www.eisoo.com/cn/professional/diskgenius/
此處下載Disk Genius,掛載你的LINUX分區(qū),趕緊把你所有的數(shù)據(jù)COPY出來,然后格式化重裝!算了,不多說了,大家對于這是什么方法心知肚明!呵呵。
補充:
6.(關于EXT4)升級2.6.28內(nèi)核后,/是ext4dev無法啟動
From Ubuntu-CN
ext4在2.6.28中正式啟用,fstab的ext4dev也可以改為ext4了,但直接啟動會提示ext4-fs not marks…..之類的錯誤。
這樣就需要更改gurb或grub4dos的配置文件,添加rootfstype=ext4。
如:
kernel /boot/vmlinuz-2.6.28 root=UUID=xxxxx rootfstype=ext4 ro splash
這樣就行可以解決了。
7.GRUB menu.lst范例(勿照搬,適用于Ubuntu 8.04.2):
給個Ubuntu 8.04.2的,你參考一下:
title Ubuntu 8.04.2, kernel 2.6.24-23-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-23-generic root=UUID=d6747029-70cf-4f34-be5f-6da3a3b70716 ro splash locale=zh_CN vga=792
initrd /boot/initrd.img-2.6.24-23-generic
quiet
title Ubuntu 8.04.2, kernel 2.6.24-23-generic (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-23-generic root=UUID=d6747029-70cf-4f34-be5f-6da3a3b70716 ro single vga=792
initrd /boot/initrd.img-2.6.24-23-generic
重點修改root后的分區(qū)標志與UUID,詳情參見上文。
UUID掃盲:UUID是Linux標記磁盤的ID,貌似每個磁盤都不一樣。如果你不知道你磁盤的UUID,可以把上述KERNEL這一行改為:
kernel /boot/vmlinuz-2.6.24-23-generic root=/dev/sdaX ro single vga=792
X為你UBUNTU所在的分區(qū)。
8.GRUB重裝時出現(xiàn)Error 22:
MBR分區(qū)表錯誤,打開終端,輸入:
sudo fdisk /dev/sda
按w并回車,重寫MBR
然后按照前面的修復步驟進行,不再報錯,成功修復Grub!