常用命令
启动与关闭
| 启动 |
virsh start <虚拟机名> |
启动一个处于关闭状态的虚拟机 |
| 正常关机 |
virsh shutdown <虚拟机名> |
模拟按下电源键,优雅关机(推荐) |
| 强制关闭 |
virsh destroy <虚拟机名> |
相当于直接拔掉电源,仅在卡死时使用 |
| 重启 |
virsh reboot <虚拟机名> |
重启虚拟机 |
| 强制重置 |
virsh reset <虚拟机名> |
强制硬重启 |
挂起与恢复
| 挂起 |
virsh suspend <虚拟机名> |
暂停虚拟机,内存数据保留在主机 |
| 恢复 |
virsh resume <虚拟机名> |
从挂起状态恢复运行 |
自启动配置
- 设置开机自启:
virsh autostart <虚拟机名>
- 取消开机自启:
virsh autostart --disable <虚拟机名>
- 查看自启列表:
virsh autostart --list
虚拟机信息查询
基本状态查询
1 2 3 4 5 6 7 8
| # 列出所有虚拟机(运行中+已关闭) virsh list --all
# 查看虚拟机详细信息(UUID、OS类型、最大内存等) virsh dominfo <虚拟机名>
# 仅查看虚拟机当前状态(running/shut off/paused) virsh domstate <虚拟机名>
|
配置与连接信息
1 2 3 4 5 6 7 8
| # 导出完整的XML配置(非常重要!) virsh dumpxml <虚拟机名>
# 搜索特定配置(例如查看磁盘路径) virsh dumpxml <虚拟机名> | grep -A 5 "<source file"
# 查看VNC远程连接端口 virsh vncdisplay <虚拟机名>
|
资源监控
1 2 3 4 5 6 7 8 9 10 11
| # 查看CPU使用统计 virsh cpu-stats <虚拟机名>
# 查看内存使用详情 virsh dommemstat <虚拟机名>
# 查看挂载的硬盘列表 virsh domblklist <虚拟机名>
# 查看虚拟网卡列表及MAC地址 virsh domiflist <虚拟机名>
|
虚拟机配置管理
XML配置编辑(核心)
KVM的所有配置都存储在XML文件中:
编辑配置(推荐):
使用此命令会自动检查XML语法,保存生效。不要直接去改 /etc/libvirt/qemu/ 下的文件,容易出错。
备份配置:
1
| virsh dumpxml <虚拟机名> > vm-config.xml
|
从XML恢复/定义:
1
| virsh define vm-config.xml # 注册虚拟机(不启动)
|
删除与重命名
取消定义(删除配置): > 此命令只删除配置文件,不会删除虚拟磁盘文件! 彻底删除(配置+磁盘): 1
| virsh undefine --remove-all-storage <虚拟机名>
|
> 高危操作: 请务必确认磁盘数据已不再需要,执行后不可恢复!
重命名虚拟机:
1
| virsh domrename <旧名称> <新名称>
|