自定义CentOS 7 镜像指南
自定义CentOS 7 镜像指南
准备工作
-
挂载源镜像:
sudo mount -o loop CentOS-7-x86_64-LiveGNOME-1810.iso /mnt
-
创建临时目录并复制镜像内容:
mkdir -p tmp/iso cp -rfp /mnt/* tmp/iso/
对镜像进行修改
-
解压 img 镜像:
sudo yum install epel-release sudo yum update yum -y install squashfs-tools cd tmp/iso/LiveOS/ su root unsquashfs squashfs.img
-
(可选) 扩展 ext3fs.img 的大小: 如果你后续需要在此环境中安装更多软件,可能需要扩展 img 的大小。默认大小为8G,例如,安装gcc可能需要额外的3G,因此建议扩展至12G。
e2fsck -f ./ext3fs.img resize2fs ext3fs.img 12000M
-
挂载 ext3fs.img 并准备环境:
mkdir ext3fs mount -o loop ext3fs.img ext3fs
-
(可选) 复制网络设置和软件安装源到镜像: 这可以确保在chroot环境中能使用yum。
cp /etc/resolv.conf ext3fs/etc/ cp /etc/hosts ext3fs/etc/
-
进入 chroot 环境安装所需软件:
cd ext3fs/ chroot .
在此环境中,你可以安装所需的软件。
-
退出 chroot:
exit
完成并清理
-
卸载和清理中间文件:
umount ext3fs rm -rf ext3fs squashfs.img
-
重新生成 squshfs.img:
mksquashfs squashfs-root/ squashfs.img -noappend -always-use-fragments
rm -rf squashfs-root/
- 创建自定义的 ISO:
cd ..
mkisofs -o /media/custom_iso2.iso -b isolinux/isolinux.bin -c isolinux/boot.cat --no-emul-boot --boot-load-size 4 --boot-info-table -R -J -v -T -V "CentOS-7-x86_64-LiveGNOME-1810" .
此版本更为简洁,并通过分块、标题和注释使内容更易理解。
转载自:https://juejin.cn/post/7267855052554321920