升級到16.04後雙啟動問題

升級到16.04後雙啟動問題

在升級到 16.04 的過程中,出現了一些問題(與 shim 簽名和 /boot/efi 問題有關),並且沒有完成。經過一些工作,我成功安裝了所有東西,Ubuntu 現在似乎工作正常。然而,在此過程中我失去了啟動 Windows 8 安裝的可能性。當我在 grub 中選擇該選項時,它說找不到相應的驅動器。 efibootmgr 的輸出表明(我猜)一切都是正確的

BootCurrent: 0008
Timeout: 0 seconds
BootOrder: 0008,0000,0001,0002,0003,0004,0005,0006,000A,0007,0009
Boot0000  Setup FvFile(721c8b66-426c-4e86-8e99-3457c46ab0b9)
Boot0001  Boot Menu FvFile(86488440-41bb-42c7-93ac-450fbf7766bf)
Boot0002* Removable Drive   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,20699b27e1a34f488e97534d40523c1d)
Boot0003* Hard Drive    VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,f5b01cc8ce8e9841b3a8fb94b6dfefee)
Boot0004* USB Storage Device    VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6895f49a99882e4bb0da03ec784d2828)
Boot0005* CD/DVD/CD-RW Drive    VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,3750dce1249e1748876bee5d3f25ebfb)
Boot0006* Network   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6567de8ee595634d842b325e6a43510b)
Boot0007* Network Boot  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,1b7f7356e3475744a9a6ed8e91832083)
Boot0008* ubuntu    HD(1,GPT,b032ab5d-1a06-4b52-afcb-14954b4b6ab8,0x800,0xfa000)/File(\EFI\ubuntu\grubx64.efi)
Boot0009  Change boot mode setting  FvFile(be77e3c1-eb5a-4a5d-897f-536e8b3c74c0)
Boot000A* Windows Boot Manager  HD(1,GPT,b032ab5d-1a06-4b52-afcb-14954b4b6ab8,0x800,0xfa000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...H................

我的 fstab 檔案如下所示:

# / was on /dev/sda10 during installation
UUID=5cc07bc2-7247-40b6-8290-7edef8b4a39d /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda9 during installation
#UUID=b22addc5-b969-47bf-a154-f91b6a137dd6 /boot           ext4    defaults        0       2
# /home was on /dev/sda11 during installation
UUID=0aa517c8-aed2-446f-91c2-ecb573598a6d /home           ext4    defaults        0       2
# swap was on /dev/sda8 during installation
#UUID=64342e46-54ea-46bf-826e-5667367e2301 none            swap    sw              0       0
/dev/mapper/cryptswap1 none swap sw 0 0
UUID=b22addc5-b969-47bf-a154-f91b6a137dd6   /boot   ext4    defaults    0   2
UUID=5251-F902  /boot/efi   vfat    defaults    0   1
#UUID=b032ab5d-1a06-4b52-afcb-14954b4b6ab8  /boot/efi   /dev/sda1: PARTLABEL=   defaults    0   1

關於我應該從哪裡開始有什麼想法嗎?謝謝。

答案1

我有兩個建議,但都不能保證有效:

  • 跑步啟動修復-- 該工具可以或多或少地自動修復許多啟動問題。如果您運行它,請確保從您正在執行的 Ubuntu 安裝或從啟動的緊急磁碟執行它。同樣的方式(也就是說,在 EFI 模式下,如果您的輸出有任何指示)。這種方法的缺點是,在極少數情況下,它實際上會讓事情變得更糟。此類問題很少見,但您應該為這種可能性做好準備。
  • 安裝我的rEFInd 啟動管理器-- 這個程式有時可以引導 Windows,而 GRUB 不能,因此值得嘗試。您可以透過在將 USB 隨身碟或 CD-R 映像安裝到硬碟之前嘗試使用它來相對安全地執行此操作;但是,這將要求您至少暫時停用安全啟動(如果目前已啟用)。此外,如果安全啟動處於活動狀態,rEFInd 將要求您在首次啟動時註冊金鑰。在這種情況下,我還建議您安裝 Debian-package 版本,不是購電協議,因為Ubuntu 16.04 中的一個錯誤這會影響 PPA 處理安全啟動的方式。

您的問題可能是由於意外刪除 Windows 啟動載入程式所造成的。如果是這種情況,上述解決方案都不起作用,唯一的修復選項包括使用 Windows 還原磁碟或從備份還原 EFI 系統分割區 (ESP) 檔案。您可以透過鍵入以下命令在 Ubuntu 中檢查相關檔案:

sudo ls /boot/efi/EFI/Microsoft/Boot

該目錄中應該有幾個文件,包括bootmgfw.efi(主引導程式)和許多其他文件。如果該文件不存在,我建議您在嘗試啟動修復或 rEFInd 修復之前進一步調查此詳細資訊。

相關內容