如何為 DIY 多重引導 USB 安裝 rEFInd
我打算創建一個雙啟動持久 USB。我想嘗試創建一個可以啟動 macOS High Sierra 和 WINdows 10 的 USB。根據我對 LVM 的了解,我可以創建 2 個 VG、1 個 APFS 和 1 個 NTFS。這將允許我在 PC 上啟動 Windows10,在 Mac 上啟動 Windows10/macOS。我知道解決方法包括使用 2 個 USB 或使用 bootcamp,但我想試一試。rEFInd 將能夠為我提供我需要的選項,在他們自己的 VG 中使用單獨的 /boot 文件。
我沒有使用 GUI,而是利用這個機會來了解基礎知識。這些是我採取的步驟。
第 1 步:我用
sudo dd if=/dev/zero of=/dev/sdb bs=4k && sync
第 2 步:添加 GPT。
sudo gdisk /dev/sdb o # Create new empty GPT
第三步:創建 EFI 分區
n # new partition 1 # 1st partition <enter> # suggested/default start sector +512M # Internet wisdom on EFI size ef00 # EFI system
第 4 步:創建 LVM 分區
n # new partition 4 # 2nd partition +128M # Internet wisdom on good practice -128M # Internet wisdom to create buffer space 8e00 # LVM file system
列印最終結果:
Disk /dev/sdd: 242614272 sectors, 115.7 GiB Logical sector size: 512 bytes Disk identifier (GUID): FE8B1928-7122-4004-9CF6-D5D47C08999E Partition table holds up to 128 entries First usable sector is 34, last usable sector is 242614238 Partitions will be aligned on 2048-sector boundaries Total free space is 526302 sectors (257.0 MiB) Number Start (sector) End (sector) Size Code Name 1 2048 1050623 512.0 MiB EF00 EFI System 2 1312768 242352094 114.9 GiB 8E00 Linux LVM
這是我迷路的地方。我不知道如何將引導載入程序安裝到 EFI 分區中。我已經關注了 Rod Smith 的為 Linux 管理 EFI 引導載入程序:EFI 引導載入程序安裝和rEFInd 引導管理器:安裝 rEFInd,但我迷路了
/boot/efi
。我的 Ubuntu 機器不是 /boot/efi,而是 /boot/grub。誰能建議在外部 USB 上實現 rEFInd 的實際步驟?
EFI 系統分區只是一個 FAT32 格式的分區(在 GPT 分區表上設置了 ESP 引導標誌)。一些 UEFI 系統很樂意從標準 MBR 分區上的 FAT32 分區載入引導載入程序。在我看來,您已正確創建它,但缺少格式。格式化後,您將通過複製 rEFInd 文件在此處“安裝”rEFInd。
- 格式:
mkfs.vfat -F 32 /dev/sdd1
- 山:
mkdir /tmp/usbboot && mount /dev/sdd1 /tmp/usbboot
- 準備目標文件夾:
mkdir /tmp/usbboot/EFI
- Copy
rEFInd
的文件:(cp -a /path/to/refind /tmp/usbboot/EFI/
或使用refind-install
腳本refind-install --root /tmp/usbboot
:)- 編輯
rEFInd
配置以品嚐 (/tmp/usbboot/EFI/refind/refind.conf
)在 UEFI 系統上完全安裝引導載入程序的最後一步是將其註冊到您的 UEFI 韌體中,使用
efibootmgr
或類似方法。可引導的 USB 驅動器通常會跳過這一點;它只會影響目前系統。要在其他系統上啟動,您將使用韌體的啟動菜單。(如果沒有插入其他驅動器,並且 USB 的 ESP 上沒有其他引導載入程序,則韌體應自動檢測rEFInd
並自動載入它。)