在 Sony VAIO Ubuntu 15.04 雙啟動上無法存取 Grub (UEFI)

在 Sony VAIO Ubuntu 15.04 雙啟動上無法存取 Grub (UEFI)

好的。我已經嘗試加載 GRUB 很長時間了(接近兩年的嘗試)。我在 Sony VAIO ( SVS151190X) 上安裝了 Windows 7,並且嘗試透過 GRUB 啟動 Ubuntu 15.04,但無法進入 GRUB...

這篇文章是一個整體細節的延伸類似/相同的問題發佈於:https://askubuntu.com/questions/666690/cannot-boot-ubuntu-15-04-using-sony-vaio-with-win-8-1-pre-installed

我嘗試過的事情:

  1. 使用easyBCD(是的,我意識到它只適用於基於MBR的系統,所以我撤銷了我用它所做的一切
  2. 在 Windows 中使用cmd 中的命令更改tobcdedit的路徑不起作用,我運行了 boot-repair 並使用它僅重新安裝 grub,然後我回到 Windows 並更改to的路徑,但仍然沒有成功。然後我將的路徑重設為原始 Windows 路徑 ( )。{bootmgr}/EFI/ubuntu/grubx64.efi{bootmgr}/EFI/ubuntu/shimx64.efi{bootmgr}/EFI/Microsoft/Boot/bootmgfw.efi
  3. 然後我嘗試了其他文章中提到的:將 bootmgfw.efi 替換為 grubx64.efi 文件, 但那不起作用/EFI/Microsoft和中還有許多其他 efi 引導文件(grub.cfg 中所述的用於 UEFI 引導的文件,我用它作為參考來確定某些文件的作用)/EFI/Boot。我更換了每一個都帶有 grubx64.efi(當然是重命名的)。對於每次替換,我將 windows 檔案從 重命名file.efifile.win.efi.

順便說一句,我嘗試直接編輯 grub.cfg (小心地,使用我應該編輯的文件作為參考,此外還搜索文件以查找對 bootmgfw.efi 的所有引用。我只編輯了列表,特別是路徑當我重命名Windows 檔案時;沒有其他內容(除了在清單的正下方,其中有一個Windows 事物的路徑)現在,我必須這樣做的原因是因為sudo grub-update返回: /usr/sbin/grub-probe: error: failed to get canonical path of /cow. 這是在安裝啟動修復後發生的。在我安裝它之前,引導修復只是一個未知命令...但是然後我在這個實時會話中再次嘗試了它(之後sudo apt-get install grub)並且它工作正常並且我確保 Windows 路徑設置正確,但是在我真正獲得grub 的訪問權之前,這並不重要。

另外,我的 BIOS 只包含從內部 HDD、外部裝置、磁碟機或網路啟動的選項。沒有選擇Windows或Ubuntu的選項,僅選擇HDD

我查看了很多幫助頁面,包括:

那麼,在我上面列出的方法對您不起作用並且您找到了可行的解決方案之後,是否有人成功地雙重開機 Ubuntu 和 Windows?

非常感謝您的幫助,提前致謝。

編輯:澄清一下,Ubuntu 已安裝,grub 引導程式也已安裝,我只是無法在啟動筆記型電腦時到達 grub 引導程式。

答案1

許多索尼的韌體 (EFI) 很粗糙,除了 Windows 啟動管理器(即EFI/Microsoft/Boot/bootmgfw.efi.我知道的唯一解決方法是用 GRUB 替換該文件(或者,如果安全啟動處於活動狀態,則使用 Shim,並將 GRUB 儲存在EFI/Microsoft/Boot目錄中的正常文件名稱中)。這啟動修復程式可以自動執行此操作,但您必須進入“高級”功能表並選擇適當的選項,這稱為“備份和替換啟動檔”(我不記得確切的措辭)。

您可以嘗試的另一件事是用零售(非 OEM)磁碟的全新安裝取代現有的 Windows 安裝。看這裡有關如何合法取得各種 Windows 安裝媒體的資訊。此過程的目的是消除大多數電腦中存在的製造商特定的缺陷,這些缺陷可能會為啟動過程增加額外的複雜性。

最根本的解決方案是在 BIOS/CSM/legacy 模式下重新安裝所有內容,繞過 EFI 模式啟動。 Sony 中的限制僅適用於 EFI 模式,因此 BIOS 模式啟動應該可以繞過這些問題;然而,如果不完全重新安裝,這種轉換將很難進行,即使重新安裝,也會出現問題。看我的關於 CSM 問題的頁面了解詳情。

我知道你說你已經嘗試了很多方法但沒有成功。不幸的是,您的問題是您的計算機有缺陷。如果你這麼長時間沒有收到它,我建議你把它退回商店以獲得退款,但我懷疑他們是否會在兩年後收回它。

答案2

我似乎已經成功在 Vaio SVS1511T9ES 上進入 GRUB。這是一段漫長的舞蹈,有許多奇怪的步驟,顯然可能適合也可能不適合你(或任何未來的讀者),但在這裡發布以防萬一它對某人有幫助:

雙重啟動 Ubuntu 16.04 + Windows 7 UEFI — GRUB 選單不出現

答案3

我更換HD後的情況:

  1. 使用 UEFI + 安全啟動
  2. 已安裝 Windows 10
  3. 安裝了Ubuntu 19.04

系統每次都會啟動進入Windows。沒有格魯布的跡象。事實上,即使進入 Windows 並選擇“高級啟動選項”,“Ubuntu”也會啟動到 Windows。

根據先前使用這台機器(Sony Vaio S1513Z9E/B)的來之不易的經驗,讓 EFI 啟動 Windows 以外的任何系統的唯一方法是替換檔案 /EFI/Microsoft/Boot/bootmgfw.efi。

請注意,我嘗試過替換引導記錄,也嘗試過BCDEdit,但無濟於事。

步驟1.替換bootmgfw.efi

  1. 啟動進入 Windows 10
  2. 運行“磁碟部分”
  3. 執行“列出磁碟”
  4. 選擇啟動磁碟,例如“sel disk 0”
  5. 執行“列出磁碟區”
  6. 選擇 EFI 卷,例如“sel vol 2”
  7. 分配一個空閒驅動器盤符,例如“分配盤符=E:”

Windows 啟動管理器現在必須重新命名並替換為 Ubuntu“shim64x”啟動管理器。此範例僅適用於 UEFI + 安全啟動!

  1. cd /d E:\EFI\Microsoft\Boot\
  2. 移動 bootmgfw.efi bootmgfw_org.efi
  3. 複製 E:\EFI\ubuntu*.efi
  4. 複製 shimx64.efi bootmgfw.efi

從 E:\EFI\ubuntu\ 至少需要 shimx64.efi 和 grubx64.efi。

現在重新啟動電腦。它應該啟動到 Grub。 Grub 有選單取代 Ubuntu 和 Windows 10。

Windows 的輸入有問題。它仍然指向 bootmgfw.efi,這將錯誤地啟動 Ubuntu。

為了建立正確載入 Windows 的 grub 項目,請依照下列步驟操作。

  1. 找到 EFI 分割區的 blkid,例如“sudo blkid /dev/sda2”(sda2 將是 EFI 分割區。
  2. 您將需要 UUID 欄位的值(而不是 PARTUUID)。
  3. 編輯 /etc/grub.d/40_custom 新增以下條目, menuentry "Windows 10 UEFI" --class windows --class os { insmod ntfs search --no-floppy --set=root --fs-uuid D604-55F0 chainloader (${root})/EFI/Microsoft/Boot/bootmgfw_org.efi }
  4. 另一個條目,相同的功能。menuentry "Windows 10 UEFI" { search --set=root --fs-uuid D604-55F0 --file /EFI/Microsoft/Boot/bootmgfw_org.efi chainloader /EFI/Microsoft/Boot/bootmgfw_org.efi }
  5. 重新建立 grub 配置,例如「sudo update-grub」。

此後,grub 選單項目「Ubuntu」將啟動 Ubuntu。選單項目「Windows 10 UEFI」將啟動 Windows 10。

請注意,上面提到的「bootmgfw_org.efi」是原來重新命名的 Windows 啟動管理器。由於 Vaio 拒絕啟動任何其他文件,因此必須這樣做。嘗試編輯/重新配置 BCD 使其按照 UEFI 規範的預期引導 Ubuntu 失敗。

相關內容