從檔案啟動 32 位元 UEFI

從檔案啟動 32 位元 UEFI

我有 USB 上的 Linux(32 位元 x86)和兩台 PC,

  1. 一台筆記型電腦 64x uefi 啟動正常。
  2. 一台具有 64 位元處理器的平板電腦但 32 位元 uefi-bios不要啟動。

第二個沒有傳統啟動選項,但它可以從.efi-File 啟動。

不幸的是沒有一個.efi文件......

  • /efi/boot/bootx64.efi
  • /efi/boot/grubx64.efi

....載入並給出相同的訊息:\efi\boot\bootx64.efi boot failed

有什麼建議麼?

答案1

EFI 支援類似位元深度的程序,包括引導程式。換句話說,x86-64(又稱 AMD64、x64 或 EM64T)EFI 可以啟動 64 位元二進位檔案,該二進位檔案通常具有以x64.efi;結尾的檔案名稱。 x86(又稱 IA32、i686 或相關)EFI 可以啟動 32 位元二進位文件,該二進位檔案通常具有以ia32.efi.請注意,如果您有 32 位元 EFI,則 CPU 的位元深度無關緊要。結果是,具有 32 位元 EFI 和 64 位元 CPU 的系統僅限於運行 32 位元 EFI 程式。

通常,EFI 引導程式(它只是 EFI 程式的特定類型)的位元深度也會限制其正在執行的作業系統的位元深度。因此,在具有 32 位元 EFI 的電腦上安裝 32 位元作業系統是最簡單的。不過,有一些方法可以繞過這個限制。特別是,Apple 的 OS X 引導程式和 Linux 的 GRUB 都支援跨位深度內核引導,因此您可以從 32 位元引導程式啟動 64 位元內核,反之亦然。 (顯然,你需要一個 64 位元 CPU 來啟動 64 位元核心。)既然你說你正在使用 Linux,但沒有說你正在使用什麼發行版,我無法給出非常詳細的說明 -事實上我手頭沒有詳細信息。這種跨位深度的安裝非常“前沿”,我建議盡可能避免它們。

堅持使用 32 位元作業系統可能會更容易,但許多作業系統(包括大多數 Linux 發行版)都忽略了 32 位元 EFI,因此您可能需要自行新增引導程式。此過程針對 Ubuntu 進行描述這裡。IIRC,Debian 現在提供 32 位元 EFI 支持,因此您可以「開箱即用」地使用它。

最終,要擁有一張可在 32 位元和 64 位元 EFI 上啟動的磁碟,且不可能支援 BIOS/CSM/傳統模式啟動,您需要安裝 32 位元和 64 位元版本的引導程序,並將其配置為以跨位深度方式引導。最好有兩個磁碟,或一個磁碟上至少有兩個安裝,一個是 32 位,另一個是 64 位。對於外部磁碟,32 位元開機載入程式將為EFI/BOOT/bootia32.efi,64 位元開機載入程式將為EFI/BOOT/bootx64.efi

相關內容