無法開啟 \EFI\Microsoft\Boot\grubx64.efi - 80000000000000E

無法開啟 \EFI\Microsoft\Boot\grubx64.efi - 80000000000000E

我在新的 SSD 上全新安裝了 14.04。一切都運作良好,直到我出於某種我不記得的原因運行啟動修復。現在,當我啟動時,出現以下錯誤:

Failed to open \EFI\Microsoft\Boot\grubx64.efi - 80000000000000E
Failed to load image
Failed to open \EFI\Microsoft\Boot\MokManager.efi - 80000000000000E
Failed to load image
Failed to open "\EFI\BOOT\fallback.efi": 14
Failed to open \EFI\BOOT\grubx64.efi - 80000000000000E
Failed to load image
Failed to open \EFI\BOOT\MokManager.efi -80000000000000E
Failed to load image

這個新硬碟從未安裝過Windows,那麼啟動修復是否有可能新增了這些檔案?我可以簡單地刪除它們嗎?

啟動訊息顯示如下:

Boot files: /EFI/Boot/bootx64.efi /EFI/ubuntu/MokManager.efi
/EFI/ubuntu/grubx64.efi /EFI/ubuntu/shimx64.efi
/EFI/Microsoft/Boot/bootmgfw.efi
/EFI/Microsoft/Boot/bootx64.efi

這是完整啟動訊息的連結-http://paste.ubuntu.com/10583113/

我應該如何進行?

答案1

引導修復有時會將 GRUB 複製到其他檔案名,包括 Windows 通常使用的檔案名稱。

您沒有說出現這些錯誤後是否能夠正常啟動,但您的啟動修復輸出使它看起來可以;具體來說:

=================== efibootmgr -v
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 3003,3001,3004,2001,2002
Boot0000* Notebook Hard Drive   BIOS(2,500,00)................-.`.......`.A.`........................................
Boot0001* ubuntu    HD(1,800,100000,3c6d1212-54d5-4b03-8eb6-680c74425f10)File(EFIubuntushimx64.efi)
Boot0002* Internal CD/DVD ROM Drive BIOS(3,500,00)................-.g.......g.A.g........................................
Boot0003* Windows Boot Manager  HD(1,800,100000,3c6d1212-54d5-4b03-8eb6-680c74425f10)File(EFIMicrosoftBootbootmgfw.efi)RC
Boot0004* Ubuntu    HD(1,800,100000,3c6d1212-54d5-4b03-8eb6-680c74425f10)File(EFIubuntugrubx64.efi)RC
Boot2001* USB Drive (UEFI)  RC
Boot2002* Internal CD/DVD ROM Drive (UEFI)  RC
Boot3001* Internal Hard Disk or Solid State Disk    RC
Boot3003* Internal Hard Disk or Solid State Disk    RC
Boot3004* Internal Hard Disk or Solid State Disk    RC

這是 的輸出sudo efibootmgr -v。不要為此驚慌失措;您可以忽略大多數可怕的長十六進制數字。特別注意BootCurrentBootOrder線。該BootCurrent行告訴您作業系統如何啟動——在本例中,透過使用該Boot0001選項,您可以看到該選項適用於 Ubuntu。然而,該BootOrder行表明計算機已配置為在該選項之前嘗試其他幾個選項。這些是預設的引導程式——通常是這樣EFI/BOOT/bootx64.efi,但您的電腦完全有可能使用EFI/Microsoft/Boot/bootmgfw.efi其中的一些引導程式。我的預感是引導修復將 GRUB 複製到了其中一個或兩個位置,但當安全開機處於活動狀態時,如果沒有 Shim 的幫助,GRUB 將無法啟動 ( shimx64.efi)。因此,您的錯誤訊息,我猜測來自您的韌體。

最令人費解的是,您透過Boot0001(Ubuntu) 條目啟動,儘管事實上它是不是BootOrder名單上。也許您的韌體在沒有其他工作的情況下從列表中消失,或者它實際上在列表中但efibootmgr由於某種原因沒有被報告。

理論上,你應該能夠透過在 Linux 中輸入以下命令來克服這個問題:

sudo efibootmgr -o 1,3003,3001,3004,2001,2002

這會將BootOrder行更改為現在的樣子,除了首先運行的 Ubuntu 條目之外。在刪除任何文件之前我會嘗試一下。但是,如果這不起作用,請繼續改名EFI/BOOT/bootx64.efi/或EFI/Microsoft/Boot/bootmgfw.efi文件,或它們所在的目錄。如果重命名這些檔案或目錄後可以啟動,請繼續刪除它們。如果重新命名它們會使事情變得更糟,您可以使用應急磁碟將它們重新命名回原來的名稱。

答案2

因此,我只需刪除 EFI/Microsoft 資料夾即可解決此問題。我猜啟動修復創建了這個資料夾,但在我的 Ubuntu 唯一設定中不需要它。

注意:對於大多數情況,這並不是一個好的解決方案,特別是如果您希望將來能夠使用 Windows。在刪除這樣的重要係統檔案之前,請確保您知道自己在做什麼。

相關內容