上次為了通過硬盤引導安裝Linux(見上一篇文章 http://www.linuxidc.com/Linux/2015-01/111190.htm),專門分了一個1GB的FAT32分區。今天回到Win7中,用磁盤管理工具把這個分區撤銷且合並後,重啟後就進入了grub rescue終端,並且提示:
error:unknown filesystem
grub rescue>
還好有了解決方案(見 http://www.linuxidc.com/Linux/2015-01/111189.htm)。原來,在合並分區之前,我的Linux分區被標識為/dev/sda8,在grub rescue中通過set命令查看到是hd0,msdos8:
grub rescue> set
prefix=(hd0,msdos8)/boot/grub
root=hd0,msdos8
在合並分區之後,之前的Linux分區變成了(hd0,msdos6)(是通過在gurb rescue中用ls命令,從ls (hd0, msdos1)一直試到ls (hd0, msdos6)查出來的),而(hd0,msdos8)指向了一個NTFS邏輯分區,這是grub識別不了的。因此需要修改grub設置,將prefix和root定向到(hd0, msdos6):
grub rescue>set root=(hd0,msdos6)
grub rescue>set prefix=(hd0,msdos6)/boot/grub
grub rescue>insmod normal
grub rescue>normal
現在又再次看到grub啟動界面了!
不過事情還沒完。進入Linux系統後,在root終端中將grub再刷一遍:
# update-grub
# grub-install /dev/sda
這才放心,之後再怎麼重啟都沒問題了。