C.8. 完成 Red Hat Enterprise Linux 6 镜像
流程
更新系统:
# {package-update}
安装
cloud-init
软件包:# dnf install cloud-utils-growpart cloud-init
编辑
/etc/cloud/cloud.cfg
配置文件并在cloud_init_modules
add 下:- resolv-conf
当实例首次引导时,
resolv-conf
选项会自动配置resolv.conf
配置文件。此文件包含与实例相关的信息,如名称服务器
、域
及其他选项。要防止网络问题,请按如下所示创建
/etc/udev/rules.d/75-persistent-net-generator.rules
文件:# echo "#" > /etc/udev/rules.d/75-persistent-net-generator.rules
这可防止
/etc/udev/rules.d/70-persistent-net.rules
文件被创建。如果创建/etc/udev/rules.d/70-persistent-net.rules
,则在从快照引导时,网络可能无法正常工作(创建为"eth1"而不是"eth0",且 IP 地址没有被分配)。将以下行添加到
/etc/sysconfig/network
,以避免访问 EC2 元数据服务出现问题:NOZEROCONF=yes
取消注册虚拟机,以便生成的镜像不包含根据克隆的每个实例相同的订阅详情:
# subscription-manager repos --disable=* # subscription-manager unregister # dnf clean all
关闭实例:
# poweroff
在 Red Hat Enterprise Linux Workstation 中,以 root 用户身份登录并使用
virt-sysprep
命令重置和清理镜像,以便它可用于在没有问题的情况下创建实例:# virt-sysprep -d rhel6
使用
virt-sparsify
命令减少镜像大小。这个命令将磁盘镜像中的任何可用空间重新转换为主机中的可用空间:# virt-sparsify --compress rhel6.qcow2 rhel6-cloud.qcow2
这会在您输入命令的位置创建一个新的
rhel6-cloud.qcow2
文件。注意根据镜像,根据应用到实例的类别中的磁盘空间,手动调整实例分区。
C.8.1. 后续步骤
- 对您要通过 Satellite 置备的每个镜像重复这些步骤。
- 将镜像移动到您要存储的位置,以备将来使用。