本文轉自:http://blog.csdn.net/aaazz47/article/details/78643355
不得不感嘆一下,雙系統(tǒng)下不能輕易升級更新啊 TT !繼上次更新win10 1709導致引導問題之后《修復GRUB:win10 1709 秋季創(chuàng)意者更新導致Linux雙系統(tǒng)無法引導》今天又出現(xiàn)了因為更新 Linux 內(nèi)核導致了GRUB 引導選擇中的 Windows 啟動項消失不見了…
哎~開始折騰吧。
一條命令修復啟動項
我的硬盤分區(qū)是 gpt 分區(qū),包括 win10 1709 秋季更新版和 Manjaro Linux 系統(tǒng)。
其實就修復之后的情況來看,造成啟動項丟失主要是 GRUB 的啟動配置文件發(fā)生的變動,而解決辦法很簡單重新生成配置文件就好了,命令如下:
sudo grub-mkconfig -o /boot/efi/EFI/GRUB/grub.cfg
# 或者下面這條命令,具體根據(jù)grub.cfg文件的位置來確定就好
sudo grub-mkconfig -o /boot/grub/grub.cfg
- 1
- 2
- 3
- 4
一般情況下系統(tǒng)會自動找到之前的 Windows 分區(qū),然后全部重新創(chuàng)建啟動項。
手動創(chuàng)建 Windows 啟動項
博主我開始不知道一條命令就好,所以還嘗試手動編輯了 Windows 啟動配置信息,詳情記錄如下
1. 編輯 Windows 啟動配置文件
/etc/grub.d/40_custom
增加下面的內(nèi)容 (注意不要刪除 exec tail 行的內(nèi)容)
menuentry “啟動 Windows 10” {
echo “正在啟動 Windows 10…”
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search —fs-uuid —no-floppy —set=root —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2 913B-D0CD
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
其中 —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2
和 913B-D0CD
需要根據(jù)本地具體情況獲取。方法如下
獲取uuid
sudo grub-probe —target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
# bootmgfw.efi 的路徑根據(jù)具體情況填寫,獲得uuid:
913B-D0CD
- 1
- 2
- 3
獲取hint-string
sudo grub-probe —target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
# 路徑同上,得到的信息如下:
—hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2
- 1
- 2
- 3
2. 重新生成配置文件
sudo grub-mkconfig -o /boot/efi/EFI/GRUB/grub.cfg
# 或者下面這條命令,具體根據(jù)grub.cfg文件的位置來確定就好
sudo grub-mkconfig -o /boot/grub/grub.cfg
- 1
- 2
- 3
- 4
全文完,參考資料:
<a href=”https://wiki.archlinux.org/index.php/GRUB(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)” rel=”nofollow” target=”blank”>https://wiki.archlinux.org/index.php/GRUB(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
?
不得不感嘆一下,雙系統(tǒng)下不能輕易升級更新啊 TT !繼上次更新win10 1709導致引導問題之后《修復GRUB:win10 1709 秋季創(chuàng)意者更新導致Linux雙系統(tǒng)無法引導》今天又出現(xiàn)了因為更新 Linux 內(nèi)核導致了GRUB 引導選擇中的 Windows 啟動項消失不見了…?
哎~開始折騰吧。
我的硬盤分區(qū)是 gpt 分區(qū),包括 win10 1709 秋季更新版和 Manjaro Linux 系統(tǒng)。?
其實就修復之后的情況來看,造成啟動項丟失主要是 GRUB 的啟動配置文件發(fā)生的變動,而解決辦法很簡單重新生成配置文件就好了,命令如下:
sudogrub-mkconfig -o /boot/efi/EFI/GRUB/grub.cfg
# 或者下面這條命令,具體根據(jù)grub.cfg文件的位置來確定就好
sudogrub-mkconfig -o /boot/grub/grub.cfg
1
2
3
4
一般情況下系統(tǒng)會自動找到之前的 Windows 分區(qū),然后全部重新創(chuàng)建啟動項。
博主我開始不知道一條命令就好,所以還嘗試手動編輯了 Windows 啟動配置信息,詳情記錄如下
1. 編輯 Windows 啟動配置文件?
/etc/grub.d/40_custom?增加下面的內(nèi)容 (注意不要刪除 exec tail 行的內(nèi)容)
menuentry“啟動 Windows 10”{
echo“正在啟動 Windows 10…”
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search —fs-uuid —no-floppy —set=root —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2913B-D0CD
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
1
2
3
4
5
6
7
8
9
其中?—hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2?和?913B-D0CD?需要根據(jù)本地具體情況獲取。方法如下?
獲取uuid
sudogrub-probe —target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
# bootmgfw.efi 的路徑根據(jù)具體情況填寫,獲得uuid:
913B-D0CD
1
2
3
獲取hint-string
sudogrub-probe —target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
# 路徑同上,得到的信息如下:
—hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2
1
2
3
2. 重新生成配置文件
sudogrub-mkconfig -o /boot/efi/EFI/GRUB/grub.cfg
# 或者下面這條命令,具體根據(jù)grub.cfg文件的位置來確定就好
sudogrub-mkconfig -o /boot/grub/grub.cfg
1
2
3
4
全文完,參考資料:?
https://wiki.archlinux.org/index.php/GRUB
(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)” rel=”nofollow” target=”blank”>https://wiki.archlinux.org/index.php/GRUB(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
?