昨天晚上在win7下重新分了一下盤,雖然沒有動linux的磁盤分區,但是整個的磁盤分區表畢竟是變了。今天開機就發生這麼杯具的事,着實讓我出了一把汗,經過多不探索(谷歌強大啊,百度真的sb),終於完美解決!
首先,說一下出現這種狀況的原因:我在windows下用分區工具重新進行了分區(雖然沒有動Linux所在分區)
注:雙斜槓//之後的內容爲命令解釋,無需輸入
解決方法:
第一步:找出你的Linux盤在那個分區以及grub目錄在什麼位置。
如果你還記得最好,忘了也無所謂,使用下面命令逐個試探即可。
grub rescue>ls 回車 //列出本機所有磁盤及分區,比如:(hd0),(hd0,msdos1)
//,(hd0,msdos4),(hd0,msdos7),(hd0,msdos8),(hd0,msdos9)等
循環使用如下命令,直至顯示該分區所包含內容而不是“unknown filesystem
grub rescue>ls (hd0,msdosX)/boot/grub 回車
假設我們試到(hd0,msdos9)時,成功顯示了內容。
第二步:
grub rescue>set root=(hd0,msdos9) 回車 //括號裏爲上一步嘗試成功的分區
grub rescue>set prefix=(hd0,msdos9)/boot/grub 回車
第三步:
grub rescue>insmod /boot/grub/normal.mod 回車
至此,應該退出了grub rescue模式,進入了熟悉的grub模式(表現是字體的顏色變了,此時可以送一口氣了)
第四步:
grub>normal 回車
第五步:修復grub
進入Linux系統後,在命令行裏
sudo update-grub 回車
第六步:
sudo grub-install /dev/sda //sda是你的啓動磁盤
修復成功就會提示Installation finished. No error reported!
ok了!!