likes
comments
collection
share

自定义CentOS 7 镜像指南

作者站长头像
站长
· 阅读数 2

自定义CentOS 7 镜像指南

准备工作

  1. 挂载源镜像:

    sudo mount -o loop CentOS-7-x86_64-LiveGNOME-1810.iso /mnt
    
  2. 创建临时目录并复制镜像内容:

    mkdir -p tmp/iso
    cp -rfp /mnt/* tmp/iso/
    

对镜像进行修改

  1. 解压 img 镜像:

    sudo yum install epel-release
    sudo yum update
    yum -y install squashfs-tools
    cd tmp/iso/LiveOS/
    su root
    unsquashfs squashfs.img
    
  2. (可选) 扩展 ext3fs.img 的大小: 如果你后续需要在此环境中安装更多软件,可能需要扩展 img 的大小。默认大小为8G,例如,安装gcc可能需要额外的3G,因此建议扩展至12G。

    e2fsck -f ./ext3fs.img
    resize2fs ext3fs.img 12000M
    
  3. 挂载 ext3fs.img 并准备环境:

    mkdir ext3fs
    mount -o loop ext3fs.img ext3fs
    
  4. (可选) 复制网络设置和软件安装源到镜像: 这可以确保在chroot环境中能使用yum。

    cp /etc/resolv.conf ext3fs/etc/
    cp /etc/hosts ext3fs/etc/
    
  5. 进入 chroot 环境安装所需软件:

    cd ext3fs/
    chroot .
    

    在此环境中,你可以安装所需的软件。

  6. 退出 chroot:

    exit
    

完成并清理

  1. 卸载和清理中间文件:

    umount ext3fs
    rm -rf ext3fs squashfs.img
    
  2. 重新生成 squshfs.img:

mksquashfs squashfs-root/ squashfs.img -noappend -always-use-fragments
rm -rf squashfs-root/
  1. 创建自定义的 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" .

此版本更为简洁,并通过分块、标题和注释使内容更易理解。