稍有常识的人知道,磁盘是存在分区表架构的,BIOS引导要涉及MBR引导代码,UEFI引导要涉及一个ESP分区(也可以是MBR FAT兼容分区)和efi引导文件。
正常标准的ISO文件是没有这些东西的。例如早期 Linux 安装盘 ISO 镜像,即使你用 dd 写入 U 盘上也无法引导。
而现代的 Linux ISO 镜像大多采用一种叫 Hybrid/ISO 镜像格式,顾名思义就是混合 ISO 。
近期手工修改 Ubuntu Live 的时候,正好最后一步需要制作 ISO ,顺便研究了下 Hybrid/ISO 的制作过程,拿出来分享一下。
需要安装两个软件包 :apt install isolinux xorriso
然后使用下面命令生成 ISO 文件
代码: 全选
xorriso -as mkisofs \
-o ../ubuntu-18.04-desktop-amd64-custom-`date +%Y%m%d_%H%M%S`.iso \
-isohybrid-mbr /usr/lib/ISOLINUX/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 \
-input-charset utf-8 -joliet -joliet-long -l -L -r \
-V "Ubuntu 18.04 AMD64 `date +%Y%m%d`" \
dvddir
晒一张我 DIY 后的 Ubuntu 18.04 Alpha 截图,加入浏览器、Flash插件、网络软件、7zip、veracrypt、等等常用软件工具软件,写U盘上移动使用。