KVM虚拟机管理利器:virsh命令详解
virsh命令是基于libvirt API的强大命令行工具,用于管理KVM虚拟机。它提供与图形化工具virt-manager类似的功能,但更适合自动化脚本和命令行操作。本文将详细介绍virsh命令的常用功能。
一、虚拟机管理
列出虚拟机:
virsh list
virsh list --all
启动/停止/重启虚拟机:
virsh start <vm_name>
virsh shutdown <vm_name>
virsh destroy <vm_name>
virsh reboot <vm_name>
创建/删除虚拟机:
virsh create <config_file.xml>
virsh define <config_file.xml>
virsh undefine <vm_name>
virsh undefine <vm_name> --remove-all-storage
修改虚拟机配置:
virsh edit <vm_name>
virsh dumpxml <vm_name>
快照管理:
virsh snapshot-list <vm_name>
virsh snapshot-create-as <vm_name> <snapshot_name> --description "Snapshot description"
virsh snapshot-revert <vm_name> <snapshot_name>
virsh snapshot-delete <vm_name> <snapshot_name>
虚拟机信息:
virsh dominfo <vm_name>
virsh cpu-stats <vm_name>
二、网络和存储管理
网络:
virsh net-list --all
virsh net-start <network_name>
, virsh net-stop <network_name>
存储池:
virsh pool-list --all
virsh pool-start <pool_name>
, virsh pool-stop <pool_name>
三、监控和调试
监控:
virsh list --state-running
日志:
/var/log/libvirt/qemu/
目录下,文件名与虚拟机名相同)。四、其他常用命令
virsh -version
virsh --help
或 virsh help <command>
五、补充说明
以上命令中 <vm_name>
, <config_file.xml>
, <network_name>
, <pool_name>
, <snapshot_name>
需要替换成实际的虚拟机名称、配置文件路径、网络名称、存储池名称和快照名称。 请根据实际情况选择合适的命令和参数。 建议在执行 virsh undefine
命令前备份重要的虚拟机数据。
通过熟练掌握virsh命令,您可以高效地管理KVM虚拟机,实现虚拟化环境的自动化和精细化控制。