麒麟桌面系统【ISO定制】

麒麟桌面系统ISO定制

一、解压旧系统ISO

# 1、新建oldiso目录
mkdir  oldiso
# 切换root用户,减少后面输入sudo的次数。
sudo  su

# 2、挂载oldiso目录
mount  xxxx.iso   oldiso

# 3、挂载的目录是只读的,所以拷贝一份到newiso目录下
cp  -rvf  oldiso  newiso

# 4、取消ISO的挂载
umount oldiso

二、解压filesystem.squashfs文件,并切换根

# 1、进casper目录
cd  ./newiso/casper

# 2、解压filesystem.squashfs文件,解压出来的目目录为squashfs-root
unsquashfs  filesystem.squashfs 

# 3、将需要定制安装的软件包复制到squashfs-root目录下
cp  /home/peturn/test.deb   ./squashfs-root/

# 4、切换进新的系统,并挂载相关目录
chroot  squashfs-root
mount -t proc proc /proc
mount -t sysfs sysfs /sys
mount -t devpts devpts /dev/pts

三、系统内容定制

# 1、安装需要的软件test.deb
dpkg  -i  test.deb

# 2、如果有需要停止或启动的服务
systemctl  enable  xxx.service
systemctl  disable   xxxx.service

# 3、定制完成后清理系统
rm   test.deb
apt-get clean
apt-get autoremove
rm -rf /tmp/*

# 4、退回到原来的系统
umount /proc
umount /sys
umount /dev/pts
exit

# 5、V10SP1-2203也可以将deb文件放到/opt/third/目录下,M900的系统放到/third-party/common/目录下,
# 系统安装完成后会安装这个目录下的deb软件,脚本写在了.kylin-post-actions文件里,
# 相关服务的开启和关闭也可以写在这个脚本里,也可以不需要重新定制filesystem.squashfs,
# 区别就是写在这个脚本里的是安装完成系统之后的配置,通过后置配置达到自己定制的目的。

四、压制新系统

# 1、删除原来的操作系统压缩文件和大小记录文件
rm  filesystem.squashfs
rm  filesystem.size

# 2、更新镜像里的软件包列表
chroot  squashfs-root  dpkg-query  -W  --showformat='${Package}${Version}\n'  >filesystem.manifest

# 3、重新生成大小文件并压缩新的根文件系统
printf $(du -sx --block-size 1 squashfs-root |cut -f1) > filesystem.size
mksquashfs  squashfs-root  filesystem.squashfs

# 4、新的根文件压制后,删除目录
rm  -r  squashfs-root

五、压制新ISO

在iso目录下

# 1、删除旧的md5sum算号文件和SHA256SUMS算号文件,并重新生成。
rm  md5sum.txt
rm  SHA256SUMS
find -type f -print0 | xargs -0 md5sum|grep -v isolinux/boot.cat |tee md5sum.txt
find -type f -print0 | xargs -0 sha256sum|grep -v isolinux/boot.cat |tee SHA256SUMS

# 2、制作iso
【arm】
mkisofs -r -T -J -joliet-long -allow-limited-size -m lost+found -m rr_moved -quiet -c boot.catalog -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot -V 'Kylin-Desktop-V10-SP1' -sysid 'LINUX' -o '/home/kylin/Kylin-Desktop-v10sp1-xxx-arm64.iso'   ./
---
【x86】
mkisofs  -J  -r  -T  -joliet-long  -no-emul-boot  -boot-load-size  4  -boot-info-table  -r  -b isolinux/isolinux.bin  -c isolinux/boot.cat  -eltorito-alt-boot  -e boot/grub/efi.img  -no-emul-boot  -V "Kylin-Desktop-V10-SP1"  -o /home/kylin/Kylin-Desktop-v10sp1-xxx-amd64.iso  ./
发表回复 0

Your email address will not be published.