kvm 系列 004-创建、还原及删除虚拟机快照
简介
快照(snapshot)是 KVM 虚拟化技术中的一个重要概念。它允许用户在虚拟机上创建一个时间点快照,以便在需要时可以轻松地恢复到之前的某个状态。快照功能可以用于备份、测试、回滚等场景。
用途
快照的主要用途包括:
- 备份和恢复。快照可以用来创建虚拟机的备份,以便在出现问题时可以恢复。
- 测试和调试。快照可以用来测试新功能,而不会影响虚拟机的当前状态。
- 回滚和恢复数据。快照可以用来回滚到虚拟机的以前状态,以便解决问题或恢复数据。
- 创建多个虚拟机。快照可以用来创建多个虚拟机,每个虚拟机都基于相同的镜像。
快照的操作
在开始之前,我们先查看本机有哪些虚拟机:
1 | leazhi@debian:~$ virsh list --all |
创建快照
语法:
1 | virsh snapshot-create-as [--domain domain] [--name name] [--description description] [--disks] [--metadata] [--atomic] [--disk-only] [--quiesce] [--no-metadata] |
参数说明:
- –domain domain :指定要创建快照的虚拟机。
- –name name :指定快照的名称。
- –description description :指定快照的描述。
- –disks :指定要创建快照的磁盘。
- –metadata :指定是否创建快照元数据。
- –atomic :指定是否以原子方式创建快照。
- –disk-only :指定是否仅创建快照的磁盘。
- –quiesce :指定是否在创建快照之前暂停虚拟机。
- –no-metadata :指定是否不创建快照元数据。
示例:
现在,假设我要为我的虚拟机 vm182-ubuntu22
创键一个快照,以便在出现问题时可以恢复,则可以使用下面的命令创建快照:
1 | leazhi@debian:~$ virsh snapshot-create-as --domain vm182-ubuntu22 --name vm182-ubuntu22_snape001 --description 'just init system' |
查看快照
列出虚拟机的所有快照:
语法:
1 | virsh snapshot-list [--domain domain] [--details] [--disk-only] |
参数说明:
- –domain domain :指定要查看快照的虚拟机。
- –details :指定是否显示快照的详细信息。
- –disk-only :指定是否仅显示快照的磁盘。
示例:
1 | leazhi@debian:~$ virsh snapshot-list --domain vm182-ubuntu22 |
查看某个快照的详细信息
语法:
1 | virsh snapshot-info [--domain domain] [--snapshotname name] |
参数说明:
- –domain domain :指定要查看快照的虚拟机。
- –snapshotname name :指定要查看的快照的名称。
示例:
1 | leazhi@debian:~$ virsh snapshot-info --domain vm182-ubuntu22 --snapshotname vm182-ubuntu22_snape001 |
还原虚拟机
语法:
1 | virsh snapshot-revert [--domain domain] [--snapshotname name] [--running] [--paused] [--force] |
参数说明:
- –domain domain :指定要还原的虚拟机。
- –snapshotname name :指定要还原的快照的名称。
- –running :指定是否在还原时启动虚拟机。
- –paused :指定是否在还原时暂停虚拟机。
- –force :指定是否在还原时强制执行。
示例:
用创建的快照来还原虚拟机:
1 | leazhi@debian:~$ virsh snapshot-revert --domain vm182-ubuntu22 vm182-ubuntu22_snape001 |
删除快照
语法:
1 | virsh snapshot-delete [--domain domain] [--snapshotname name] [--metadata] [--children] [--force] |
参数说明:
- –domain domain :指定要删除的虚拟机。
- –snapshotname name :指定要删除的快照的名称。
- –metadata :指定是否删除快照的元数据。
- –children :指定是否删除快照的子快照。
- –force :指定是否在删除时强制执行。
示例:
删除快照:
1 | leazhi@debian:~$ virsh snapshot-delete --domain vm182-ubuntu22 --snapshotname vm182-ubuntu22_snape001 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 生活日志!
评论