例如,我们要给虚拟机centos7-1.qcow2创建快照,则可以执行命令:

virsh snapshot-create centos7-1.qcow2

KVM虚拟机快照查看命令格式如下:

virsh snapshot-list 【虚拟机名称】

或者是:

qemu-img info 【虚拟机名称】

要查看我们创建的快照,可以执行命令:

virsh snapshot-list centos7-1.qcow2

上述命令执行结果如下:  
 ![在这里插入图片描述]()  
 可以看出,我们成功的为KVM虚拟机创建了快照。但是,在这种创建方式中,快照的名称由KVM随机指定分配。如果我们想自己指定虚拟机的快照名称,则可以执行命令:

virsh snapshot-create-as 【虚拟机名】 【快照名】

命令示例如下:

virsh snapshot-create-as centos7-1.qcow2 snapshot-2

上述命令可以为centos7-1.qcow2创建名为snapshot-2的快照,该命令执行结果如下:  
 ![在这里插入图片描述]()  
 ![在这里插入图片描述]()



> 
> 注意:  
>  在使用qemu-img命令时,我们可以查看快照的大小。在上图中,我们可以发现快照大小为0,这是由快照的创建原理所决定的。当快照创建后,KVM虚拟机会将当前的系统磁盘所固定,对磁盘新的修改会避免使用该空间,因此如果我们创建快照后,并没有对系统进行更改,快照的大小就为0。
> 
> 
> 


当KVM虚拟机有多个快照时,我们可以执行命令:

virsh snapshot-current 【虚拟机名称】

来查看KVM虚拟机当前使用的快照,查看该虚拟机当前使用的快照命令如下:

virsh snapshot-current centos7-1.qcow2

该命令执行结果如下:  
 ![在这里插入图片描述]()  
 可以看出,在当前该虚拟机的快照为snapshot-2。



> 
> 注意:  
>  KVM支持在开机状态下对虚拟机做快照,这样的快照会记录下当前系统内存的数据,当下次启动时会将该数据取出,并恢复为开机状态。  
>  但是,由于要将内存中的数据写入磁盘,因此在开机状态下创建快照时要花费较长的时间。
> 
> 
> 


### 三、KVM快照恢复


接下来,我们来介绍一下KVM的快照恢复。  
 KVM快照恢复命令格式如下:

virsh snapshot-revert 【虚拟机名】 【快照名】

例如,执行命令:

virsh snapshot-revert cetos7-1.qcow2 1649751390

可以将centos7-1.qcow2虚拟机恢复为1649751390的快照状态。该命令执行结果如下:  
 ![在这里插入图片描述]()


### 四、KVM快照删除



![]()