一,创建快照
[root@foundation156 images]# qemu-img create -f qcow2 -b xuniji.qcow2 kuaizhao.qcow2
创建快照 创建类型格式 备份 母盘 快照名称
###########注意,虽然都是.qcow2文件,但是快照和虚拟机本身是不一样的,我们可以通过file查看#####
创建快照之后需要从虚拟机图形化管理器中导入,此时选择第四个(图形化管理中不小心删除了也可以这样做)
注意:为虚拟机创建快照之后,可以在快照中进行破坏性实验,防止破坏虚拟机!!!
####################.xml文件储存虚拟机或者快照的硬件信息
[root@foundation156 qemu]# vim westos.xml ###修改虚拟机名字,重启服务
[root@foundation156 qemu]# systemctl restart libvirtd.service ####此时会发现图形化虚拟机的名字已经更改了,但是,.xml文件名称本身不会改变
##############################################################
二,virsh命令
[root@foundation156 qemu]# virsh list ###查看活跃的虚拟机
Id Name State
----------------------------------------------------
2 westos running
[root@foundation156 qemu]# virsh list --all ####查看所有虚拟机
Id Name State
----------------------------------------------------
2 westos running
- desktop shut off
- server shut off
[root@foundation156 qemu]# virsh start desktop ###运行虚拟机
[root@foundation156 qemu]# virt-viewer desktop ###显示虚拟机
[root@foundation156 qemu]# virsh shutdown westos ###关闭虚拟机
Domain westos is being shutdown
[root@foundation156 qemu]# virsh destroy westos ###从图形化界面中删除,但是虚拟机文件不会被删除
Domain westos destroyed ####这时可以直接从图形化管理界面选择第四个导入,由于之前的数据都在
###所以不需要安装和初始化配置
[root@foundation156 mnt]# virsh create westos.xml ###一次性恢复,reboot之后就没有了
Domain westos created from westos.xml
[root@foundation156 mnt]# virsh define westos.xml ###永久恢复数据,如果.qcw2文件被删除了,就不可恢复了
Domain westos defined from westos.xml
[root@foundation156 qemu]# virsh undefine westos.xml ###删除硬件信息
三,利用脚本创建
注意:如果脚本内容关于路径的文件位置改变了,一定要修改改脚本,所以,一般把与路径有关的文件放在固定的位置,防止意外删除,移动等!!!
建立一个脚本文件,加上可执行权限
脚本内容
#!/bin/bash
qemu-img create -f qcow2 -b \ ###建立快照
/var/lib/libvirt/images/$1.qcow2 \ ###母盘
/var/lib/libvirt/images/$2.qcow2 ###快照,这里不能加\ ,这三行是一条命令,如果加上\
###则表示这三行和下面的是一次执行的同一命令,显然这是错误的
###以上三条为使用命令建立快照###
###以下为从图形化虚拟机管理界面导入快照#####
virt-install \ ####安装
--name $2 \ #####快照名称
--cpus 1 \ ####内存大小
--ram 1024 \
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \ ####快照路径,由于虚拟机本身size已经写了
###就不用像写虚拟机建立脚本那样写上size了
###bus是硬盘类型,virtio=virtual input output
--import & ###导入,&防止占用终端
执行
[root@foundation156 ~]# /mnt/snapshot.sh westos redhat ###为westos创建名为redhat的快照
#注意westos替换$1处的内容,redhat替换$2处的内容
########################事实上开启虚拟机用的rht-vmctl命令也是一个脚本文件