定制CentOS,制作ISO镜像文件
安装官方操作系统
1、下载CentOS官方包:首先需要从CentOS官方网站下载所需的CentOS版本,这里我们下载的是CentOS7.4x86_64DVD1708.iso。
2、安装系统:将下载的ISO文件刻录到DVD或USB驱动器,并在服务器上进行安装,建议选择最小化安装(Minimal install),这样可以减少不必要的软件包,提高系统的安全性和性能。
3、配置网络:由于是最小化安装,网络可能不会自动启动,使用ip a
命令查看网络端口,使用dhclient
命令自动获取IP地址,如果需要手动配置网络,可以编辑/etc/sysconfig/networkscripts/ifcfgeno1
文件,将最后一行的ONBOOT=no
改为ONBOOT=yes
。
安装制作ISO的工具
1、安装工具:在已安装的CentOS系统上,使用yum命令安装创建ISO所需的工具,包括createrepo、mkisofs、isomd5sum和rsync。
2、创建目录:创建一个用于制作ISO的目录,例如/root/iso/CentOS7.4evglow
。
3、挂载官方ISO:将官方ISO文件挂载到一个临时目录,例如/mnt/usb
,然后使用rsync命令将文件同步到之前创建的目录中。
裁剪软件包
1、理解ISO目录结构:挂载ISO后,可以看到包含多个目录,如Packages、EFI等,Packages目录包含所有需要的二进制RPM包,EFI目录用于64位的基于EFI的系统引导。
2、裁剪RPM包:根据需求,删除不需要的RPM包,只保留需要的安装包,可以使用rpm qa | grep package_name
来列出已安装的包,并使用rpm e package_name
来删除不需要的包。
3、修改comps.xml:通过修改comps.xml
文件,可以定义需要的软件包组,该文件位于/root/iso/CentOS7.4evglow/comps.xml
。
生成ISO镜像
1、使用createrepo生成元数据:在/root/iso/CentOS7.4evglow
目录下运行createrepo .
命令,生成元数据。
2、使用genisoimage生成ISO:运行genisoimage o /path/to/output.iso b isolinux/isolinux.bin c isolinux/boot.cat noemulboot bootloadsize 4 bootinfotable J r V "Custom CentOS" /root/iso/CentOS7.4evglow
命令,生成最终的ISO镜像。
3、校验ISO:使用isomd5sum
命令校验生成的ISO文件的完整性。
FAQs
1、如何设置默认的root密码?
在编辑ks.cfg文件时,可以添加如下行来设置加密的root密码:
```
rootpw iscrypted $6$sNStQWknxzURmZpv$PEFIX7tG1McnzRsGBUm4UnOy4KcR8CHcujTbPYCHCoFZTq2C07uTf7aeT6p7
```
$6$sNStQWknxzURmZpv$PEFIX7tG1McnzRsGBUm4UnOy4KcR8CHcujTbPYCHCoFZTq2C07uTf7aeT6p7
是加密后的密码字符串。
2、如何在ISO镜像中添加自定义的软件包?
可以在制作ISO之前,将自定义的软件包复制到/root/iso/CentOS7.4evglow/Packages
目录下,然后在ks.cfg文件中添加相应的软件包名称,确保在生成ISO时这些软件包会被包含进去。