我正在尝试定制 ubuntu-14.04.2-server-amd64.iso,但无法使其可 uefi 启动。
首先我尝试使用原始 iso 文件:
dd if=/path/to/iso/ubuntu-14.04.2-server-amd64.iso of=/dev/sdc bs=16M
目前一切都很好 - 我可以在 UEFI 中启动闪存。
我已将 iso 内容提取到 /path/to/tmp 文件夹,然后我尝试重新创建 iso(现在未修改),但新的 iso 不适用于 uefi。
我正在用以下命令重新创建 iso:
mkisofs -r -V "Custom Ubuntu Install CD" -cache-inodes \
-J -l -b isolinux/isolinux.bin -c isolinux/boot.cat \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot \
-o /path/to/tmp.iso /path/to/tmp
然后我使用相同的 dd 命令将新 iso 放在 usb 上。使其可 uefi 启动的正确命令是什么?
答案1
你可以使用索里索。我不记得为什么,但我认为这在 mkisofs 中是不可能的。
尝试:
xorriso -as mkisofs \
-isohybrid-mbr /usr/lib/syslinux/mbr/isohdpfx.bin \
-c isolinux/boot.cat \
-b isolinux/isolinux.bin \
-no-emul-boot \
-boot-load-size 4 \
-boot-info-table \
-eltorito-alt-boot \
-e boot/grub/efi.img \
-no-emul-boot \
-isohybrid-gpt-basdat \
-o /path/to/tmp.iso \
/path/to/tmp
这将产生混合 MBR/EFI iso
答案2
您可以使用以下内容创建一个小型(2.8 MB 软盘)UEFI 磁盘:
mkfs.msdos -C /tmp/uefi.iso 2880
sudo mount /tmp/uefi.iso /mnt
sudo cp /tmp/your_uefi_files/* /mnt/
sudo umount /mnt
然后重新启动系统,按 ESC 或 F10 或 F11 并选择 UEFI shell。要切换到 UEFI 文件系统类型:
fs0: