雙系統升級 Windows 10 後造成 ubuntu 開機進入 grub rescue
7/29 是免費升級 Windows 10 的最後期限,雖然現在幾乎都使用 ubuntu 做為平時工作或一般使用的環境,鮮少使用 Windows 了,但是現在使用雙系統的方式,仍保有原本購買筆電附送的 Windows 8.1 。微軟這免費的升級的活動還是很吸引人,經過將近一年時間的改善,現在的 Windows 10 好像也沒有什麼災情,決定在這個截止日前升級。
升級完 Windows 10 重新開機後,系統就直接進入 grub rescue
模式,估計是原來磁區的位置號碼改變所致。只要找回之前開機的磁區修改正確就好了。
查詢原本的開機磁區
以 ls 指令查詢磁區情形
grub rescue> ls
(hd0,gpt1) (hd0,gpt2) (hd0,gpt3) (hd0,gpt4) (hd0,gpt5) (hd0,gpt6)
逐步以 ls
看能不能查詢目錄情形,找出開機磁區
grub rescue> ls (hd0,gpt1)/
grub rescue> ls (hd0,gpt1)/boot
grub rescue> ls (hd0,gpt2)/
grub rescue> ls (hd0,gpt2)/boot
...
以此類推。記錄下查詢到的磁區位置(我的是(hd0,gpt6)
),後面會使用上。
離開 rescue 進入 normal 模式
在 rescue 提示符號(grub rescue>
)輸入 set
查詢現在的 prefix 和 root 設定值。
grub rescue> set
prefix=(hd0,gpt5)/boot/grub
root=hd0,gpt5
使用 set
指令將 prefix 和 root 更換成正確的磁區號碼,我的是將 (hd0,gpt5) 更改為 (hd0,gpt6)。
grub rescue> set prefix=(hd0,gpt6)/boot/grub
grub rescue> set root=(hd0,gpt6)
再次檢查 prefix 和 root
grub rescue> set
prefix=(hd0,gpt6)/boot/grub
root=hd0,gpt6
切換至 normal 模式
grub rescue> insmod normal
grub rescue> normal
在進入 Normal 模式後,編輯 /boot/grub/grub.cfg
檔案,將 (hd0,gpt5)
取代為 (hd0,gpt6)
。取代後執行:
$ sudo grub-install
結束後重新開機。
留言