虚拟机及其快照安装脚本

利用镜像安装虚拟机
1.准备好镜像
在这里插入图片描述

2.利用镜像生成虚拟机
3.切换到超级用户下–>virt-manager–>发光的小电脑–>local install media–>添加本地镜像安装源路径–>不改内存,cpu–>disk 6.0GB–>改虚拟机名字–>选第一个选项,安装红帽7.3版本,选英文,选时区,选语言,选服务器。。。。配置分区,开始安装,设置root密码,用户可建可不建,等好久。。。。。初步成功,选语言,时区

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选完之后,右下角的键就亮了,开始安装
在这里插入图片描述
安装好之后重启,选择我要接受,配置系统内

#####虚拟机的管理#####
1.虚拟机管理命令
virt-manager 开启虚拟机管理器
virsh list 显示正在运行的虚拟机
virsh list --all 查看所有虚拟机
virsh start desktop 打开虚拟机
virsh shutdown desktop 正常关闭虚拟机(可被阻塞)
virsh destory desktop 强行关闭虚拟机
virt-viewer desktop 显示虚拟机(但是会占用终端,可以用ctrlz,bg jobsnum打入后台)
virsh undefine westos 删除虚拟机(文件信息还在,虚拟机管理器里面没有了)
##delete westos.xml

virsh define westos.xml 利用硬件信息!!创建虚拟机

######拷贝别人虚拟机#########
模拟虚拟机的恢复
准备一个已经安装好的虚拟机
scp root@ip:/etc/libvirt/qemu/westos.xml /mnt/
scp root@ip:/var/lib/libvirt/images/westos.qcow2 /mnt/
westos.xml 是硬件文信息启动虚拟机 cd westos.qcow2是虚拟机westos的硬盘信息
.xml可扩展标记语言,作封装,管理虚拟机的信息
在虚拟机管理器中删除这个装好的虚拟机

模拟恢复过程
cd /mnt
virsh create westos.xml 用硬件信息文件启动虚拟机
在操作过程中会有以下报错
error:Cannot access storage file ‘/var/lib/libvirt/images/westos.qcow2’(as uid:107.gid:107): No such file or directory

原因是:用硬件信息启动虚拟机,默认在 /var/lib/libvirt/images/中寻找westos.qcow2系统的文件信息。而我们scp过来的westos.qcow2系统文件信息在/mnt,所以会产生报错。

解决方法:
mv /mnt/westos.qcow2 /var/lib/libvirt/images/

virsh define westos.xml 永久恢复虚拟机(用硬件信息启动),就会占用终端启动westos虚拟机到开始界面。virt-manager也会有westos虚拟机。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
virsh undefine westos ##delete westos.xml
删除虚拟机(后面是虚拟机的名字)(正在运行时删除不了,关闭运行即可)virt-manager删掉了westos虚拟机,但是文件信息还在,如果想要再恢复westos虚拟机,再virsh define westos.xml
完全删除rm -fr /var/lib/libvirt/images/westos.qcow2 删除虚拟机的文件信息

####虚拟机的安装脚本(自动直接安装,不需要再点点点)直接生成虚拟机,后面跟1个名字。
编辑一个sh文件($1是占位符,运行脚本时后面跟什么就是什么)
vim /mnt/vm_create.sh

1 test -z “$1” && {
2 echo “Error: Please input VMNAME following scritps!!”
3 exit
4 } (1-4行:定义当$1占位符所在的位置是空的时候退出脚本不再执行,在此意义为当运行脚本安装虚拟机没有指定虚拟机名称时,退出安装脚本)
5 virt-install \ (第5行 开启虚拟机图形化管理的命令,‘\’换行符,与前面命令空格隔开,后面不接空格,意为下一行命令是上一行命令的衔接)
6 --name $1 \ (虚拟机的名字)
7 --cdrom /home/kiosk/Desktop/rhel-server-7.3-x86_64-dvd.iso \ (镜像虚拟机的安装文件,–cdrom后面接的是自己的镜像虚拟机存放路径)
8 --memory 1024 \ (内存选1024)
9 --vcpus 1 \ (cpu选1)
10 --disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \ (硬件信息是存放在 /var/lib/libvirt/images/$1.qcow2,路径不能错,size硬盘大小为6,)
11 --network source=br0,model=virtio &> /dev/null & (设置网关,屏蔽错误输出到null,且打入后台执行)

chmod +x vm_create.sh 对编辑的脚本进行授权
/mnt/vm_create.sh 运行脚本即可 (后面再加一个名字,直接一个虚拟机就创建成功。)出现7.3红帽下载那个页面
也可以用命令sh vm_create.sh node 如果没有反映,就是脚本写错了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
快照(reset虚拟机的原理)

快照就相当于在虚拟机的硬件信息前放了一块’玻璃’,透过’玻璃’进行操作,所有的操作痕迹作用在‘玻璃’上,但是呈现出来的效果就是‘玻璃’上的痕迹加‘玻璃’后的内容,操作失误还原只需拿走‘玻璃’更换新的即可(因为母盘没有任何改变)。

cd /var/lib/libvirt/images/ 进入虚拟机硬件信息存放的位置

ls 找出自己所需要的母盘硬件信息(这里用westos虚拟机的硬件信息做母盘,westos.qcow2)

qemu-img create -f qcow2 -b westos.qcow2 node1.qcow2
以westos.qcow2为母盘进行快照,生成node1.qcow2即成功,点发亮的小电脑,选最后一个!images的那个!,镜像选node1.qcow2,然后选内存大小,名字,点点点,Begin 快照生成。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试: 在硬件信息node1.qcow2安装的虚拟机node1中,rm -fr /* 使其系统崩溃不能重启,关闭虚拟机node1。然后删除/var/lib/libvirt/images/里面快照出来的文件node1.qcow2。然后重复以westos.qcow2为母盘进行快照一个新的node1.qcow2。qemu-img create -f qcow2 -b westos.qcow2 node1.qcow2再次打开虚拟机node1即可正常运行。(仍然需要点点点)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
快照的脚本编辑(以快照出来的硬件信息进行虚拟机的后台安装)直接生成快照虚拟机。需要2个名字
母盘进行快照的时候,母盘必须关闭,不然就废了。
vim /mnt/vm_create_snopshot.sh

1 qemu-img create
2 -f qcow2
3 -b /var/lib/libvirt/images/$1.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null (1-3行以$1.qcow2为母盘生成快照$2.qcow2)
4
5 virt-install \ (安装命令)
6 --name $2 \ (新虚拟机的名称)
7 --memory 1024 \ (内存)
8 --vcpus 1 \ (cpu)
9 --disk /var/lib/libvirt/images/$2.qcow2,bus=virtio
10 --network source=br0,model=virtio
11 --import &> /dev/null & (把那些信息放在垃圾桶)

chmod +x vm_create_snopshot.sh 对编辑的脚本授权
/mnt/vm_create_snopshot.sh westos node1 运行脚本,直接生成node1,并且在后台运行,不占用终端。

file $2.qcow2
。。。。。(path /var/lib/libvirt/images/$1.qcow2)
路径就是$1的硬盘信息,硬件信息还是$1.xml

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值