本文主要介绍如何定制Ubuntu系统。
1.准备Ubuntu的原版ISO镜像文件
2. 在ubuntu系统里挂载原版镜像文件
mkdir /mnt/iso mount ubuntu.iso /mnt/iso
3. 复制所有的镜像文件到本地目录
cp -rp /mnt/iso/. /opt/livecd/
4. 取消镜像的挂载
umount /mnt/iso
5. 解压filesystem.squashfs文件到当前目录
cd /opt/livecd/casper unsquashfs filesystem.squashfs
6 进入文件系统
chroot squashfs-root
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts
7. 修改DNS,配置源文件,复制本机已经配置好的源文件到需要定制的系统机器
exit
cp /etc/apt/sources.list /opt/livecd/casper/squashfs-root/etc/apt/sources.list
cp /etc/resolv.conf /opt/livecd/casper/squashfs-root/etc/resolv.conf
8. 切换到新的系统,安装所需要的软件
chroot squashfs-root
apt update
apt install XXX
9.清除系统
umount /proc
umount /sys
umount /dev/pts
exit
10. 压缩文件系统
rm filesystem.squashfs
mksquashfs squashfs-root filesystem.squashfs
rm -r squashfs-root
11. 生成md5校验文件
rm md5sum.txt
find -type f -print0 | xargs -0 md5sum | grep -v isolinux/boot.cat | tee md5sum.txt
12 . 生成ISO文件
genisoimage -joliet-long -V "ubuntu-20.04.4-desktop-amd64.iso" -o "/opt/tet01.iso" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -cache-inodes -T -e isolinux/isolinux.bin -no-emul-boot /opt/livecd/
或者
mkisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../Ubuntu-jxg-test.iso .
完成ubuntu镜像定制化