如何创建 UEFI 可启动 CD?
ISOLINUX 没有提到 UEFI: https://wiki.syslinux.org/wiki/index.php?title=ISOLINUX
虽然 SYSLINUX 可以,但特定于 syslinux: https://wiki.syslinux.org/wiki/index.php?title=Install#UEFI
我已经安装了这些软件包: syslinux syslinux-common isolinux syslinux-efi
我按照说明使用 ISOLINUX 创建旧版(非 UEFI)可启动 CD,文件结构如下:
CD_root/
CD_root/isolinux/
CD_root/isolinux/isolinux.bin
CD_root/isolinux/isolinux.cfg
CD_root/isolinux/ldlinux.c32
我认为这些文件isolinux.bin
和文件ldlinux.c32
仅用于旧版启动。
虽然有 UEFI 特定的,但/usr/lib/ISOLINUX/ 或其他任何地方都ldlinux.e64
没有。isolinux.efi
要创建 UEFI 可启动 CD,我到底需要做什么不同的事情?
答案1
不特定于 CD,但这里是如何制作 syslinux UEFI 可启动介质的一般指南:
parted /dev/sdf mklabel gpt
parted /dev/sdf mkpart boot fat32 0% 100%
parted /dev/sdf set 1 esp on
parted /dev/sdf set 1 boot on
mkfs.vfat -F 32 /dev/sdf1
mount /dev/sdf1 /mnt/tmp/
mkdir -p /mnt/tmp/EFI/BOOT/
cp /usr/lib/SYSLINUX.EFI/efi64/syslinux.efi /mnt/tmp/EFI/BOOT/BOOTX64.EFI
cp /usr/lib/syslinux/modules/efi64/menu.c32 /mnt/tmp/EFI/BOOT/
cp /usr/lib/syslinux/modules/efi64/ldlinux.e64 /mnt/tmp/EFI/BOOT/
cp /usr/lib/syslinux/modules/efi64/libutil.c32 /mnt/tmp/EFI/BOOT/
umount /mnt/tmp/
efibootmgr --create --disk /dev/sdf --part 1 --loader /EFI/BOOT/BOOTX64.EFI --label "syslinux" --unicode