得益于最近正在移植的 iPXE,Archlinux 现在可以通过网络来安装系统,用户只需事先下载1、2MB的小镜像,即可实现引导进入 Archlinux 安装环境。
必备条件
要使用网络安装,必须满足以下要求:
- 具有 DHCP 自动配置的有线(以太网)互联网连接
- 足够的内存来存储和运行实时系统
- 有独立网卡(iPXE尚不支持7A的网卡)
下载EFI
下载文件: ipxe-arch.efi,并保存到 <ESP>
分区的 /EFI/arch_netboot
目录中。
假设你的<ESP>
分区挂载到了 /boot/efi
目录,则参考以下命令:
# mkdir /boot/efi/EFI/arch_netboot
# sudo cp ipxe-arch.efi /boot/efi/EFI/arch_netboot/arch_netboot.efi
用法
- 从UEFI Shell 手动启动
重启按F12,在界面中选择 UEFI Shell
,进入UEFI Shell 环境,输入以下命令启动:
Shell> fs0:
Shell> EFI\arch_netboot\arch_netboot.efi
- 为UEFI 增加新启动项
假设您的 <ESP>
分区为 /dev/sda1
,在操作系统下使用 efibootmgr
命令,将为UEFI 增加一个新的菜单项:
# efibootmgr --create --disk /dev/sda --part 1 --loader /EFI/arch_netboot/arch_netboot.efi --label "Arch Linux Netboot" --unicode
之后开机时,通过按 F12
调出快捷菜单,并选择Arch Linux Netboot
来启动网络安装。
- 为Grub 增加菜单项
假设您的<ESP>
分区的UUID为1234-5678
,则创建 /boot/grub/custom.cfg
文件,内容参考以下内容:
menuentry 'Arch Linux Netboot' {
insmod part_gpt
insmod fat
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root 1234-5678
else
search --no-floppy --fs-uuid --set=root 1234-5678
fi
chainloader /EFI/arch_netboot/arch_netboot.efi
}
开机进入 Grub 菜单时,将多出一项 Arch Linux Netboot
启动菜单,选择之后,将进入网络安装环境。