kvm虚拟机管理利器:virsh命令详解
virsh命令是基于libvirt API的强大命令行工具,用于管理KVM虚拟机。它提供与图形化工具virt-manager类似的功能,但更适合自动化脚本和命令行操作。本文将详细介绍virsh命令的常用功能。

一、虚拟机管理
-
列出虚拟机:
- 运行中虚拟机:
virsh list - 所有虚拟机(包括已停止的):
virsh list --all
- 运行中虚拟机:
-
启动/停止/重启虚拟机:
- 启动:
virsh start - 停止(优雅关机):
virsh shutdown - 强制停止:
virsh destroy - 重启:
virsh reboot
- 启动:
-
创建/删除虚拟机:
- 从XML配置文件创建:
virsh create - 定义虚拟机(不启动):
virsh define - 删除虚拟机定义(保留磁盘):
virsh undefine - 删除虚拟机及其磁盘:
virsh undefine--remove-all-storage
- 从XML配置文件创建:
-
修改虚拟机配置:
- 编辑XML配置:
virsh edit - 查看XML配置:
virsh dumpxml
- 编辑XML配置:
-
快照管理:
- 列出快照:
virsh snapshot-list - 创建快照:
virsh snapshot-create-as--description "Snapshot description" - 恢复快照:
virsh snapshot-revert - 删除快照:
virsh snapshot-delete
- 列出快照:
-
虚拟机信息:
- 详细信息:
virsh dominfo - CPU使用情况:
virsh cpu-stats
- 详细信息:
二、网络和存储管理
-
网络:
- 列出网络:
virsh net-list --all - 启动/停止网络:
virsh net-start,virsh net-stop
- 列出网络:
-
存储池:
- 列出存储池:
virsh pool-list --all - 启动/停止存储池:
virsh pool-start,virsh pool-stop
- 列出存储池:
三、监控和调试
-
监控:
- 运行中虚拟机:
virsh list --state-running
- 运行中虚拟机:
-
日志:
- 查看虚拟机日志 (通常位于
/var/log/libvirt/qemu/目录下,文件名与虚拟机名相同)。
- 查看虚拟机日志 (通常位于
四、其他常用命令
- 版本信息:
virsh -version - 帮助信息:
virsh --help或virsh help
五、补充说明
以上命令中 , , , , 需要替换成实际的虚拟机名称、配置文件路径、网络名称、存储池名称和快照名称。 请根据实际情况选择合适的命令和参数。 建议在执行 virsh undefine 命令前备份重要的虚拟机数据。
通过熟练掌握virsh命令,您可以高效地管理KVM虚拟机,实现虚拟化环境的自动化和精细化控制。










