ubuntu修複grub命令 今天在備份grub.cfg的時候出了點問題,導致誤刪了grub.cfg,要命的是我當時還沒有意識到這點。重啟後只見黑底白字的grub命令列介面,一行grub>等待著我輸入命令,好吧,我來修複你T T 1.grub>ls 顯示出來了多個分區,分別是(hd0)(hd0,msdos4),(hd0,msdos1),(hd0,msdos2),(hd0,msdos3) 2.grub>ls (hd0,msdosX)/boot/grub x代表數字 多次執行上面的命令,從1試到了4,終於在ls (hd0,msdos4)/boot/grub 的時候顯示出了一堆東西而不是no such file or directory了,到這裡就成功了一半了 3.grub>set root=(hd0,msdosx) x代表數字,在第二步中我找到我的數字是4了,輸入的是msdos4 grub>setprefix=(hd0,msdosx)/boot/grub x代表數字,在第二步中我找到我的數字是4了,輸入的是msdos4 grub>insmod normal grub>normal 一般來說到了這裡就會啟動系統了,但是我的卻是提示未載入kernel,好吧,我這就載入kernel 4.grub>linux (hd0,msdosx)/boot/vmlinuz-(kernel版本號碼) ro root=/dev/sdax x代表數字,我的是msdos4.所以我這裡輸入sda4 這裡需要著重說明。首先,網上說的kernel (hd0,msdosx)/boot/vmlinuz-(kernel版本號碼) ro root=/dev/sdax在我的ubuntu13.04中提示無kernel這個命令,經過Google才知道已經不用kernel而是改用linux了。其次,關於kernel版本號碼,當你輸入到linux (hd0,msdosx)/boot/vmlinuz-這裡時,多次連續按下鍵盤左上方的Tab鍵就會出現多個你的系統裡面所有kernel版本的名字,你選一個合適的照著打就OK了。 5.grub>initrd /boot/initrd-(initrd版本號碼) 這裡輸入版本號碼也是和輸入kernel版本號碼的方法一樣,Tab鍵顯示系統所有的initrd版本。注意,這個版本號碼一定要和你剛才設定的kernel版本號碼一致! 6.grub>boot 一般來說,輸入這條命令後就會閃現一堆滾動的英文,然後卡在一個介面一段時間,之後就可以看見你的系統了! 7.不要高興得太早了,其實啟動的問題還沒有解決,終端輸入命令 update-grub ,OK啦,grub修複完成!