使用KVM创建镜像
上一期博客我在centos7中安装了kvm创建了一台虚拟机。现在我要通过安装好的虚拟机生成镜像,这样生成的镜像无需安装就可以使用在虚拟机之中。
镜像的生成准备工作
在虚拟机中的操作:
#通过宿主机将yum源发送到虚拟机之中。
scp CentOS7-Base-163.repo root@192.168.80.136:/etc/yum.repos.d/
#删除原有yum源,加载163yum源。
yum clean all
yum makecache
#安装插件,vim、net-tools、bash-completion
yum -y install vim net-tools bash-completion
#关闭防火墙和系统增强
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/sysconfig/selinux
SELINUX=disabled
#在宿主机将镜像脚本发送给虚拟机。
scp centos-cloud-init.sh root@192.168.80.136:/
#修改脚本的名称并赋予执行权限。
mv centos-cloud-init.sh cloud-init.sh
chmod 755 cloud-init.sh
chmod +x cloud-init.sh
#修改脚本的内容和路径并执行重定向到其他路径
sed -i 's/\r//g' cloud-init.sh
mv cloud-init.sh /usr/bin/
echo ' /bin/bash /usr/bin/cloud-init.sh' >> /etc/rc.d/rc.local
做到这一步镜像已经生成了,镜像的位置取决于你创建虚拟机的位置。在上一期的博客中,我将虚拟机创建在**/data/vm**中,所以只要将其中的镜像提取出来就大功告成了!
优化镜像的操作
#设置开机参数
vim /etc/sysconfig/grub
#在grub菜单中添加一下内容
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto console=ttyS0,115200n8 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
#使添加的参数生效
grub2-mkconfig -o /boot/grub2/grub.cfg
这里我将脚本和yum源分享出来给大家使用。
链接:https://pan.baidu.com/s/1ZtMnh0JG3wPq8IONsJAmDA
提取码:g0pu