烂泥:KVM快照的创建与恢复

简介:

因为要做有关KVM虚拟机的实验,所以需要虚拟机生成快照。查询相关资料,说KVM可以使用两种方法生成虚拟机的快照。

方法一、使用qemu-img snapshot命令进行生成快照

方法二、使用virsh snapshot-create-as命令进行生成快照

其实经过我的测试,发现使用qemu-img snapshot命令生成快照后,即使恢复快照也是没有用的。虚拟机还是当前的状态,而不是快照之前的状态。不知道为什么,而且还不稳定,经常报错。

注意要使用KVM的快照功能,虚拟机的硬盘一定要是qcow2格式,否则无法使用快照功能。

有关硬盘的格式,可以在创建虚拟机硬盘时指定,也可以使用相关命令进行转换。这个可以参考我之前的文章《烂泥:KVM中安装Windows Server 2008 R2系统》。

在这篇文章中,我们重点介绍有关virsh snapshot-create-as命令生成快照。

不过在介绍之前,我们还是把第一种方法使用qemu-img snapshot命令生成快照的相关命令介绍下。

其实我们是可以直接通过命令的帮助查询到有关qemu-img snapshot使用方法的。

本次实验我们已虚拟机centos为例,已centos虚拟机安装ftp命令前后做快照。

clip_image001[4]

clip_image002[4]

我们先来创建一个快照,使用如下命令:

qemu-img snapshot -c centos_install_ftp /vhostdisk/centos.img

创建快照

qemu-img snapshot -l /vhostdisk/centos.img

查询快照

qemu-img snapshot -d centos_install_ftp /vhostdisk/centos.img

删除快照

clip_image003[4]

clip_image004[4]

注意,其中centos_install_ftp为快照名称,/vhostdisk/centos.img为原虚拟机。

刚刚在使用qemu-img snapshot进行相关测试发现,居然把我的虚拟机给搞坏了。唉,真是坑爹啊,怪不得网络上的资料显示使用这个有问题呢。强烈建议,还是使用第二种方法吧。

以上是qemu-img snapshot创建KVM快照的方法,现在我们来介绍使用virsh snapshot-create-as来生成虚拟机快照的方法。

Centos虚拟机未安装ftp命令,创建快照如下:

clip_image005[4]

snapshot-create-as centos centos_install_ftp

为虚拟机centos创建快照,快照名称为centos_install_ftp

snapshot-list centos查看虚拟机centos所有的快照

snapshot-info centos centos_uninstall_ftp

查看虚拟机centos快照centos_uninstall_ftp详细信息

clip_image006[4]

Centos虚拟机安装ftp命令,创建快照如下:

clip_image007[4]

snapshot-create-as centos centos_install_ftp

为虚拟机centos创建快照,快照名称为centos_install_ftp

clip_image008[4]

以上我们把centos这台虚拟机在安装FTP命令前后的快照已经做好,现在虚拟机centos处于已经安装FTP命令状态,如果我们此时要把虚拟机centos恢复到安装FTP命令之前的话,我们只需要使用virsh snapshot-revert命令即可。但是在使用virsh snapshot-revert命令恢复虚拟机centos状态之前,我们必须要把虚拟机关闭。

关闭虚拟机,我们可以使用virsh destroy命令进行强制性关机,我们也可以使用virsh shutdown命令进行关机。

注意要使用virsh shutdown命令进行关闭虚拟机的话,一定要安装acpid服务。同时经过多次测试证明如果虚拟机有快照的话,就无法使用virsh shutdown/reboot,命令进行关机或者重启。

yum -y install acpid 安装acpid服务

/etc/init.d/acpid status 查看acpid服务是否运行

clip_image009[4]

destroy centos强制关闭虚拟机centos

clip_image010[4]

Centos虚拟机关闭后,我们开始恢复虚拟机的状态到未安装FTP命令之前,即恢复虚拟机centos的快照。使用如下命令:

snapshot-revert centos centos_uninstall_ftp

clip_image011[4]

注意:恢复快照时,虚拟机一定要处于关机状态下,同时快照恢复完毕后,强烈建议把现在的虚拟机关闭重新启动下。

clip_image012[4]

以上是有关KVM虚拟机的创建与恢复,如果要删除一个快照,可以使用如下命令:

snapshot-delete centos centos_uninstall_ftp

至此KVM虚拟机的快照介绍完毕。


本文转自 烂泥行天下 51CTO博客,原文链接:http://blog.51cto.com/ilanni/1535627

相关文章
|
8月前
|
SQL 存储 数据挖掘
【虚拟机数据恢复】VMware虚拟机文件被误删除的数据恢复案例
虚拟机数据恢复环境: 某品牌R710服务器+MD3200存储,上层是ESXI虚拟机和虚拟机文件,虚拟机中存放有SQL Server数据库。 虚拟机故障: 机房非正常断电导致虚拟机无法启动。服务器管理员检查后发现虚拟机配置文件丢失,所幸xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还在。服务器管理员在尝试恢复虚拟机的过程中,将原虚拟机内的xxx-flat.vmdk删除后新建了一个虚拟机,并分配了精简模式的虚拟机磁盘和快照数据盘,但原虚拟机内的数据并没有恢复。
【虚拟机数据恢复】VMware虚拟机文件被误删除的数据恢复案例
|
8月前
|
Linux KVM 数据库
服务器数据恢复—服务器误删除KVM虚拟机数据恢复案例
服务器数据恢复环境: 一台服务器安装Linux操作系统+EXT4文件系统。服务器上运行数台KVM虚拟机,每台虚拟机包含一个qcow2格式的磁盘文件和一个raw格式的磁盘文件。 服务器故障: 工作人员操作失误删除了服务器上的3台KVM虚拟机,虚拟机中运行数据库,需恢复误删除虚拟机中raw格式的磁盘文件。
服务器数据恢复—服务器误删除KVM虚拟机数据恢复案例
|
5月前
|
存储 Linux 数据库
在Linux中,什么是快照备份?
在Linux中,什么是快照备份?
|
5月前
|
存储 Linux 测试技术
在Linux中,如何实现文件系统的快照和克隆?
在Linux中,如何实现文件系统的快照和克隆?
|
5月前
|
SQL 关系型数据库 MySQL
在Linux中,如何实现数据备份和恢复?
在Linux中,如何实现数据备份和恢复?
|
Linux KVM 虚拟化
KVM无法创建快照解决
KVM无法创建快照解决
335 0
|
Linux 虚拟化 Windows
【Linux基础篇一】如何使用虚拟机对其进行克隆、快照、迁移和删除
【Linux基础篇一】如何使用虚拟机对其进行克隆、快照、迁移和删除
【Linux基础篇一】如何使用虚拟机对其进行克隆、快照、迁移和删除
|
存储 监控 Ubuntu
干货教程:Linux 系统的备份怎么恢复
tar 命令 副本(本机备份整个系统,以后还原还是还原到本机) 注意根目录下要有充足的可用空间用于备份。

相关实验场景

更多