定制Linux操作系统镜像

2022-12-08

准备iso镜像文件

这里使用uos演示

目录:/mnt/uniontechos-desktop-20-professional-1042-amd64.iso

新建目录/opt/old/opt/new(存放旧镜像与定制后的镜像)

mkdir -t /opt/old /opt/new

挂载镜像到/opt/old

mount /mnt/uniontechos-desktop-20-professional-1042-amd64.iso /opt/old

拷贝目录

cp -r /opt/old /opt/new

安装系统解压工具

yum -y install squashfs-tools

解压filesystem.squashfs

cd /opt/new/live
unsquashfs filesystem.squashfs

修改squashfs-root目录

cd squashfs-root

修改内容自定义,取决于安装之后的内容

谨慎修改,删除系统文件会导致安装失败

重新封装filesystem.squashfs

mksquashfs squashfs-root/ filesystem.squashfs -comp xz -Xbcj x86 -e boot

封装前将之前的filesystem.squashfs删除或移出/opt/new目录

封装后将squashfs-root/删除或移出/opt/new目录

否则后续打包会报错

将/opt/new打包成镜像

cd /opt
xorriso -as mkisofs -D -r -V "UOS 20" -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 --efi-boot boot/efi.img -input-charset utf-8 -o uos-1042.iso new/