如何在Arch Linux环境下制作FreeBSD 11.1的UEFI启动Live USB?
解决FreeBSD 11.1 Live USB UEFI启动问题(Arch Linux环境)
我在Arch Linux环境下也碰到过类似的情况——用dd写Linux镜像没问题,但FreeBSD的UEFI启动需要额外处理旧引导残留的问题,下面是具体的解决步骤:
第一步:彻底清除USB设备的旧引导残留
你之前用这个USB安装过Linux,大概率残留了GRUB的EFI引导文件,这会导致UEFI固件优先加载旧引导,而非FreeBSD的引导程序。操作前务必确认USB设备名(别搞错成系统硬盘):
- 用
lsblk识别USB设备(比如输出里的/dev/sdb):lsblk - 卸载所有挂载的USB分区:
sudo umount /dev/sdb* - 清除MBR和GPT分区表,彻底重置设备:
sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1 sudo sgdisk --zap-all /dev/sdb
第二步:写入FreeBSD 11.1 Live镜像
确保你下载的是支持UEFI的amd64版本镜像(比如FreeBSD-11.1-RELEASE-amd64-livecd.iso),然后用dd写入:
sudo dd if=/path/to/FreeBSD-11.1-RELEASE-amd64-livecd.iso of=/dev/sdb bs=4M status=progress conv=fsync
- 替换
/path/to/...为你的镜像实际存储路径 bs=4M和status=progress用于提升写入速度并显示进度conv=fsync确保所有数据写入完成后再结束进程
第三步:验证UEFI引导分区
写入完成后,USB会自动生成EFI分区(通常是/dev/sdb2),你可以挂载它确认FreeBSD的引导文件存在:
sudo mkdir -p /mnt/freebsd-esp sudo mount /dev/sdb2 /mnt/freebsd-esp ls /mnt/freebsd-esp/EFI/BOOT/
正常情况下会看到BOOTX64.EFI文件,这就是FreeBSD的UEFI引导程序。
第四步:调整UEFI固件启动设置
重启电脑进入UEFI设置界面(通常按F2、F10或Del键),做以下配置:
- 禁用Legacy BIOS/CSM兼容模式,仅启用纯UEFI模式
- 将USB设备设置为第一启动项
完成以上步骤后,重启电脑就能正常进入FreeBSD 11.1的Live环境,不会再出现GRUB提示了。
内容的提问来源于stack exchange,提问作者Josh Pinto
相关产品推荐
相关产品推荐

