对安装在VMware上的CentOS7.X进行封装,是为了后续的实验环境需要,可以批量去生成Linux系统。通过虚拟机模版来创建一台CentOS系统,跟原来机器一样,去掉了唯一性,而通过克隆出来的虚拟机,会与被克隆的机器一样,包含网卡的信息等。
1.将CentOS7.X系统升级到最新版
[root@localhost ~]# yum -y update
升级完成,重新启动机器
2.删除系统机器ID
(1)删除系统的ID:machine-id是系统的唯一性ID,每一台服务器的machin-ID都应该不一样,为了解决ID的冲突,故删除
[root@localhost ~] echo "" > /etc/machine-id
(2)重新生成mache-id
在/etc/profile文件最后添加:使之开机重启后,通过systemd-machine-id-setup的命令来生成全新的machine-id号
[root@localhost ~]# cat >> /etc/profile << EOF
systemd-machine-id-setup
EOF
(3)清除UDEV
系统重启后会自动创建,删除/etc/udev/rules.d/目录下的所有文件
[root@localhost ~]#rm -fr /etc/udev/rules.d/*
(4)清除ssh私钥文件
不同的系统私钥应该是不同的,删除后重启系统会自动生成全新的私钥
[root@localhost ~]#rm -fr /etc/ssh/ssh_host_*
(5)清除网卡配置信息
删除/etc/sysconfig/network-scripts目录下的ifcfg-ens文件,如果是CentOS6.X可能是ifcfg-eth或是ifcfg-em*,重启后会自动生成此文件
[root@localhost ~]#rm -fr /etc/sysconfig/network-scripts/ifcfg-ens*
3.清除系统中的旧日志文件
(1)先停止系统的日志服务
[root@localhost ~]#systemctl stop systemd-journald.socket
(2)将原来的旧日志文件删除
[root@localhost ~]#find /var/log -type f -exec rm {} ;
(3)创建journal日志目录,用来保存日志使用,原日志是保存在/run/log/journal目录下,掉电就会丢失
[root@localhost ~]#mkdir -p /var/log/journal
[root@localhost ~]#chgrp systemd-journal /var/log/journal
[root@localhost ~]#chmod g+s /var/log/journal
(4)清除所有命令的历史记录
[root@localhost ~]#cd /root && rm -fr .bash_history && history -c
(5)关闭系统
[root@localhost ~]#systemctl poweroff
4.对封装好的系统做创建快照
5.启用虚拟机模板
6.通过虚拟机快照模版生成新的系统
为了节省实验磁盘空间,创建链接克隆
配置 全新克隆虚拟机的保存位置,最后单击“完成”即可