可以自定义的场景与方式
快速上手示例
容器镜像自定义(Dockerfile)
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y \
curl vim htop \
&& rm -rf /var/lib/apt/lists/*
CMD ["/bin/bash"]
docker build -t my-ubuntu:22.04 .
docker run -it my-ubuntu:22.04
安装盘自定义(Cubic 图形化)
sudo apt-add-repository ppa:cubic-wizard/release
sudo apt update
sudo apt install cubic
安装盘自定义(命令行全流程)
sudo apt install squashfs-tools genisoimage xorriso
mkdir -p ~/custom-iso ~/squashfs
sudo mount -o loop ubuntu-22.04.iso ~/custom-iso
rsync -a ~/custom-iso/ ~/livecd/
sudo unsquashfs -d ~/squashfs ~/livecd/casper/filesystem.squashfs
sudo mount --bind /dev ~/squashfs/dev
sudo mount -t proc none ~/squashfs/proc
sudo chroot ~/squashfs
apt-get update
apt-get install -y vim zsh
# 可同步更新 initramfs(如更换内核)
update-initramfs -u
exit
sudo umount ~/squashfs/dev ~/squashfs/proc
sudo mksquashfs ~/squashfs ~/livecd/casper/filesystem.squashfs -comp xz
sudo bash -c "du -sx --block-size=1 ~/squashfs > ~/livecd/casper/filesystem.size"
# 注意:发行版可能使用不同校验方式(如 sha256sum),请按实际 ISO 目录下的校验文件为准
find ~/livecd -type f -print0 | xargs -0 md5sum > ~/livecd/md5sum.txt
xorriso -as mkisofs -D -r -V "Custom Ubuntu" \
-b isolinux/isolinux.bin -c isolinux/boot.cat \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-eltorito-alt-boot -e efi/boot/bootx64.efi -no-emul-boot \
-o ~/custom-ubuntu.iso ~/livecd
注意事项