转载自http://blog.sina.com.cn/s/blog_53ab41fd01013rc0.html
1。创建快照
virsh snapshot-create-as --domain rhel6 --name 2012-03-08 --description "Pure Rhel6"
2。查看快照
virsh snapshot-list rhel6
3。查看快照配置
virsh snapshot-current rhel6
4。回复快照位置
virsh snapshot-revert rhel6 2012-03-08
5。删除快照
birsh snapshot-delete rhel6 2012-03-08
6。获取帮助
virsh help snapshot
=============================================================
使用libvirt创建的虚拟机,默认格式为raw,要想使用快照功能,需要先将其转换格式。
1:qemu-img snapshot -c base_sys_centos5.564bit.img CentOS5.5_64bit.img
在现有镜像基础上创建一个快照。
报如下错误:
emu-img: Could not create snapshot 'base_sys_centos5.564bit.img': -95 (Operation not supported)
2:怀疑是文件格式不对,查看一下。
qemu-img info CentOS5.5_64bit.img
p_w_picpath: CentOS5.5_64bit.img
file format: raw
virtual size: 20G (21474836480 bytes)
disk size: 3.4G
果然是raw格式
3:使用如下命令将raw格式的镜像转化为qcow2格式。
qemu-img convert -f raw -O qcow2 CentOS5.5_64bit.img CentOS5.5_64bit_basesys_qcow2.img
4:转换成功后,再次对镜像创建一个快照
qemu-img snapshot -c CentOS5.5_64bit_Qcow2_basesys.img CentOS5.5_64bit_Qcow2.img
OK,创建成功。
该步并不会创建一个新的镜像,可以使用如下命令来查看指定的镜像上是否存在快照,并在合适的时候,恢复快照。
qemu-img snapshot -l CentOS5.5_64bit_Qcow2.img
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
1 CentOS5.5_64bit_Qcow2_basesys.img 0 2011-07-21 23:17:38 00:00:00.000
恢复快照:
qemu-img snapshot -a CentOS5.5_64bit_Qcow2_basesys.img CentOS5.5_64bit_Qcow2.img
其他操作:
'snapshot' is the name of the snapshot to create, apply or delete
'-a' applies a snapshot (revert disk to saved state)
'-c' creates a snapshot
'-d' deletes a snapshot
'-l' lists all snapshots in the given p_w_picpath
一、kvm快照与恢复
1、为原虚拟机所在的lv做一个快照。
lvcreate -L 2G -sn kvmSS /dev/vg/kvm (一般快照大小是宿主的15-20%)
2、修改/etc/libvirt/qemu/虚拟机名.xml,将此配置文件里虚拟机lv名,改成虚拟机快照名。
vim /etc/libvirt/qemu/虚拟机名.xml
<source dev=‘虚拟机快照名’>
3、重启动计算机,即可使用快照虚拟机。
4、恢复,当快照虚拟机弄乱或弄坏了,可以直接用回原始的虚拟机做一个快照,再用上面同样的方法,指向这新建的快照。
二、快速制造多台虚拟机
1、为原虚拟机所在的lv做一个快照。
lvcreate -L 2G -sn kvmSS /dev/vg/kvm (一般快照大小是宿主的15-20%)
2、复制/etc/libvirt/qemu/虚拟机名.xml并改名为/etc/libvirt/qemu/虚拟机名1.xml
cp /etc/libvirt/qemu/虚拟机名.xml /etc/libvirt/qemu/虚拟机名1.xml
3、修改 /etc/libvirt/qemu/虚拟机名1.xml
vim /etc/libvirt/qemu/虚拟机1.xml (修改一下几项,随便改只要与原来不一样就可以了。)比如:
<name>1kvmSS</name>
<uuid>395ae05e-c118-e460-4de4-7f58e08f8aa1</uuid>
<source dev=‘虚拟机快照名’>
<mac address='52:54:00:a7:11:cb'/>
4、virsh define 虚拟机名1.xml (定义虚拟机)
5、virsh start 虚拟机名1 (新的虚拟机就可以使用啦。呵呵)
如果遇到虚拟机网卡启动失败提示device eth0 does not seem
可以ifconfig -a 查看网卡的名字是否不是eth0.
如果不是,ip link set ethX name eth0
virsh常用命令一览表
命令 | 说明 |
help | 显示该命令的说明 |
quit | 结束 virsh,回到 Shell |
connect | 连接到指定的虚拟机服务器 |
create | 启动一个新的虚拟机 |
destroy | 删除一个虚拟机 |
start | 开启(已定义的)非启动的虚拟机 |
define | 从 XML 定义一个虚拟机 |
undefine | 取消定义的虚拟机 |
dumpxml | 转储虚拟机的设置值 |
list | 列出虚拟机 |
reboot | 重新启动虚拟机 |
save | 存储虚拟机的状态 |
restore | 回复虚拟机的状态 |
suspend | 暂停虚拟机的执行 |
resume | 继续执行该虚拟机 |
dump | 将虚拟机的内核转储到指定的文件,以便进行分析与排错 |
shutdown | 关闭虚拟机 |
setmem | 修改内存的大小 |
setmaxmem | 设置内存的最大值 |
setvcpus | 修改虚拟处理器的数量 |
查看Domain信息执行的命令
命令 | 说明 |
domid | 查看虚拟机的标识符 |
domname | 查看虚拟机的名称 |
domuuid | 查看虚拟机的 UUID |
domstate | 查看虚拟机目前的状态 |
dominfo | 查看虚拟机的信息 |
转载于:https://blog.51cto.com/cbb1133/999004