造成該問題可能的原因是我update之後對系統造成了修改,結果導致了/boot/grub/i386-pc/normal.mod的丟失,normal.mod是ubuntu開機引導的必加載項,因而報出
/boot/grub/i386-pc/normal.mod not found. Grub Rescue>的問題。
關於基本知識,孫斌斌的個人blog 做了部分總結:
- set 設置環境變量
- ls 查看設備
- insmod 加載模塊
- root 指定用於啓動系統的分區
- prefix 設定grub啓動路徑
下面是具體步驟:
①查看分區
因爲每個人的分區不一樣,所以我們要查看分區,用ls指令
grub rescue>ls
回車後,就會出現
(hd0) (hd0,msdos9) (hd0,msdos8) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos1)
grub rescue>
注:我用的是grub2,對於grub用戶,分區前沒有msdos字樣
上面是我的分區,每個人的不一樣。
grub rescue>set回車
prefix=(hd0,msdos9)/boot/grub
root=hd0,msdos9
從上面可以看出來現在我的系統是從(hd0,msdos9)裏啓動的。
那麼怎麼知道ubuntu在哪個分區呢?進入第二步
②尋找ubuntu所在分區
這一步我們要一個一個的試,
還是用ls指令
先試下在不在(hd0,msdos8)裏邊
grub rescue>ls (hd0,msdos8)
回車會發現,不是,還是unknown filesystem
接着來
。。。。。。。。。
當我試到
(hd0,msdos7)的時候,可以看到一下子多了很多字,這些就是我ubuntu主文件夾下的文件夾和文件的名字。OK,找到分區了!
③修改啓動分區
grub rescue>root=(hd0,msdos7)
grub rescue>prefix=/boot/grub //grub路徑設置
grub rescue>set root=(hd0,msdos7)
grub rescue>set prefix=(hd0,msdos7)/boot/grub
grub rescue>insmod normal //啓動normal啓動
grub rescue>normal
依次敲入上面的指令,是不是看到熟悉的啓動菜單了?選win7後,一鍵Ghost就開始備份系統了。別高興太早,一切還都沒開始呢。如果你不是因爲一鍵Ghost問題進入grub rescue,可以直接跳到第⑤步
④再來一遍
當你等着一鍵Ghost備份完系統,重啓後,你發現還是
error:unknown filesystem
grub rescue>
彆着急,再把前三步進行一遍就可以了
⑤進入命令行 啓動Ubuntu
進入系統啓動選項界面後,你發現,無論點那個還是進不去,這是因爲你還沒有真正的修改grub,這個要到ubuntu裏修改
進入系統啓動項界面後,按C進入命令行模式
grub >set root=hd0,msdos7
grub >set prefix=(hd0,msdos7)/boot/grub
grub >linux /vmlinuz-xxx-xxx root=/dev/sda7 //裏邊的xxxx可以按Tab鍵,如果有acpi問題,在最後加一句acpi=off
grub >initrd /initrd.img-xxx-xxx
grub >boot
Ubuntu正常啓動了吧?
⑥進入ubuntu修復grub
大功就要高成了
進入Ubuntu後,修復grub
在終端裏運行
sudo update-grub
重建grub到第一硬盤mbr
sudo grub-install /dev/sda
以上內容很的好學習的關於開機引導的問題,but it doesn't work for me.
最終我的解決方案:
1.考慮使用UltraISO製作ubuntu14.04 U盤鏡像以啓動系統恢復
參考:http://jingyan.baidu.com/article/363872ec8b4f6a6e4ba16f2b.html
結果:失敗,由於刻錄鏡像時報出始終被佔用的問題,後來網上提示原因是UltraISO版本問題以及ubuntu14.04太新。。。。放棄
2.考慮使用Universal-USB-Installer製作ubuntu14.04 U盤以啓動系統恢復
參考:http://blog.csdn.net/liangcaiyun2013/article/details/10410797
結果:U盤啓動ubuntu成功,但是,進入ubuntu後無法修復原分區的系統。
3.考慮使用Boot-Repair
參考:http://sourceforge.net/p/boot-repair-cd/home/Home/
結果,有詳細的教程,然後最後修復成功。
補充,由於我是在修復我的vmware中的ubuntu,因而還需要做一個vmware的u盤啓動,教程如下:
http://jingyan.baidu.com/article/b2c186c8eb3813c46ef6ffef.html
注意事項:教程中建立好新硬盤後,如果想要該盤的啓動順序排在前面,點右面詳細面板的高級,設置虛擬設備節點,將想要先啓動的硬盤盤號往前排。