網絡引導
網絡引導映像是小型 (< 1 MiB) 映像,可用於在系統啟動時即時下載最新的 Arch Linux 版本。無需更新網絡引導映像,最新版本將自動可用。網絡引導鏡像可以從 Arch Linux Netboot 頁面下載。
BIOS引導[編輯 | 編輯原始碼]
若要在基於 BIOS 引導的計算機上使用網絡引導,需要 ipxe.lkrn
或 ipxe.pxe
映像。
使用 ipxe.lkrn[編輯 | 編輯原始碼]
ipxe.lkrn
映像可以像 Linux 內核一樣引導。任何 Linux 引導加載程序(如 GRUB 或 Syslinux)都可用於從硬盤驅動器、CD 或 USB 驅動器加載它。例如,Syslinux wiki 提供了在可引導介質上安裝 [1]和配置[2] Syslinux 的説明。
您可以通過以下步驟製作啟動 ipxe.lkrn
的閃存驅動器:
- 使用 lsblk 找出您的設備路徑。讓我們假設它是
/dev/sdc
。 - 在設備上創建MBR分區表。
- 使用 FAT32文件系統創建主分區並將其標記為活動。
- 掛載分區,在那裏創建
boot/syslinux
目錄並複製ipxe.lkrn
到該boot
目錄。
# mount /dev/sdc /mnt # mkdir -p /mnt/boot/syslinux # cp ipxe.lkrn /mnt/boot
- 創建 syslinux 配置
/mnt/boot/syslinux/syslinux.cfg
DEFAULT arch_netboot SAY Booting Arch over the network. LABEL arch_netboot KERNEL /boot/ipxe.lkrn
- 卸載分區
# umount /mnt
- 安裝 Syslinux MBR 和 Syslinux 本身
# dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdc # syslinux --directory /boot/syslinux/ --install /dev/sdc1
- 現在,您應該能夠使用ipxe.lkrn啟動USB盤。
或者,您也可以通過運行以下命令來嘗試使用 QEMU 的映像:
$ qemu-system-x86_64 -enable-kvm -m 2G -kernel ipxe.lkrn
使用 ipxe.pxe[編輯 | 編輯原始碼]
ipxe.pxe
映像是 PXE 映像。它可以從現有的 PXE 環境進行鏈式加載。這允許配置一個 DHCP 伺服器,以便從網絡引導將始終引導到 Arch Linux 網絡引導。
或者,您也可以從現有的 pxe 加載器(如 pxelinux)鏈式加載它。這是一個菜單條目示例:
LABEL arch_netboot_chain COM32 pxechn.c32 APPEND ipxe.a56af4e6a9a9.pxe
要使此示例正常工作,您必須將 pxechn.c32 複製到 pxelinux.0 所在的目錄中。
UEFI引導[編輯 | 編輯原始碼]
ipxe-arch.efi 鏡像可用於在 UEFI 模式下啟動 Arch Linux 網絡引導。僅支持 64 位 UEFI。可以通過 efibootmgr 將映像添加為引導選項,從引導管理器(如 systemd-boot 或 rEFInd)啟動,或直接從 UEFI shell 啟動。您也可以從 UEFI 系統上的獨立 U 盤啟動它。
使用 efibootmgr 安裝[編輯 | 編輯原始碼]
首先安裝 efibootmgr包 軟件包。假設您的 EFI 系統分區(ESP) 位於 /dev/sdd1
並掛載在 esp
下,您應該按如下方式移動它 - 讓我們也給它一個更友好的名稱:
# mkdir esp/EFI/arch_netboot # mv ipxe.*.efi esp/EFI/arch_netboot/arch_netboot.efi
然後,您可以按如下方式創建啟動項:
# efibootmgr --create --disk /dev/sdd --part 1 --loader /EFI/arch_netboot/arch_netboot.efi --label "Arch Linux Netboot" --unicode
從U盤啟動[編輯 | 編輯原始碼]
如果要從 USB 閃存驅動器啟動 Netboot EFI 二進制文件,請將其複製到FAT格式分區上的默認/回退啟動路徑 (/EFI/BOOT/BOOTx64.EFI
)。然後,UEFI 系統應自動加載映像。
在GNU/Linux裡[編輯 | 編輯原始碼]
例如,假設 /dev/sdX
作為閃存驅動器,按如下方式準備 USB 閃存驅動器:
- If not done yet, create a partition table on
/dev/sdX
and a partition (/dev/sdXn
) on the device.提示:提示:最兼容的設置是將 MBR 分區表與類型如果尚未完成,請在設備上0c
為「W95 FAT32 (LBA)」的單個活動(可引導)主分區一起使用[3]/dev/sdX
創建分區表,並在設備上創建分區 (/dev/sdXn
)。 - 如果尚未完成,請將分區格式化為 FAT32:
# mkfs.fat -F 32 /dev/sdXn
- 掛載文件系統:
# mount /dev/sdXn /mnt
- 在掛載的文件系統上創建一個
/EFI/BOOT
目錄:# mkdir /mnt/EFI /mnt/EFI/BOOT
- 複製
pxe-arch.efi
到 x64 UEFI 的默認引導路徑:# cp pxe-arch.efi /mnt/EFI/BOOT/BOOTx64.EFI
- 卸載文件系統。
故障排除[編輯 | 編輯原始碼]
引導 EFI 二進制文件給出「device error」[編輯 | 編輯原始碼]
如果引導 EFI 二進制文件導致 Failed to execute ... device error
,請確保在 UEFI 設置中啟用了網絡堆棧。它可能需要初始化網絡接口控制器 (NIC) 選項 ROM,因此此外還要查找「板載 LAN 引導 ROM」、「啟動 PXE OpROM 策略」或類似設置。