使用 ISOLINUX 创建 UEFI 可启动 CD

使用 ISOLINUX 创建 UEFI 可启动 CD

如何创建 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

相关内容