virsh

virsh #

virsh 是一个用于管理虚拟机的命令行工具,是 libvirt 虚拟化 API 的一部分。它允许用户创建、配置、启动、停止和管理虚拟机及其资源。

语法 #

virsh [选项] <命令> [参数]

常用选项 #

选项 描述
-c, --connect=URI 连接到指定的虚拟机管理程序
-d, --debug=LEVEL 设置调试级别
-e, --escape <字符> 设置转义字符序列
-k, --keepalive-interval=NUM 设置 keepalive 间隔
-K, --keepalive-count=NUM 设置 keepalive 计数
-l, --log=FILE 输出日志到文件
-q, --quiet 静默模式
-r, --readonly 以只读模式连接
-t, --timing 显示命令执行时间
-v, --verbose 详细输出
-V, --version 显示版本信息并退出

常用命令 #

域(虚拟机)管理 #

命令 描述
list 列出域
start 启动一个(之前定义的)非活动域
shutdown 正常关闭域
reboot 重启域
reset 重置域
destroy 强制停止域
suspend 暂停域
resume 恢复域
save 保存域状态到文件
restore 从文件恢复域状态
define 从 XML 文件定义域
undefine 取消定义域
edit 编辑域的 XML 配置
console 连接到域的控制台
dominfo 显示域信息
domstate 显示域状态
domid 显示域 ID
domname 显示域名
dumpxml 显示域 XML

存储池管理 #

命令 描述
pool-list 列出存储池
pool-create 从 XML 文件创建并启动存储池
pool-define 从 XML 文件定义存储池
pool-start 启动存储池
pool-destroy 销毁存储池
pool-delete 删除存储池
pool-info 显示存储池信息
pool-dumpxml 显示存储池 XML

存储卷管理 #

命令 描述
vol-list 列出存储卷
vol-create 从 XML 文件创建存储卷
vol-delete 删除存储卷
vol-info 显示存储卷信息
vol-dumpxml 显示存储卷 XML

网络管理 #

命令 描述
net-list 列出网络
net-create 从 XML 文件创建并启动网络
net-define 从 XML 文件定义网络
net-start 启动网络
net-destroy 销毁网络
net-info 显示网络信息
net-dumpxml 显示网络 XML

示例 #

  1. 列出所有虚拟机:
virsh list --all
  1. 启动虚拟机:
virsh start vm-name
  1. 关闭虚拟机:
virsh shutdown vm-name
  1. 强制停止虚拟机:
virsh destroy vm-name
  1. 查看虚拟机信息:
virsh dominfo vm-name
  1. 编辑虚拟机配置:
virsh edit vm-name
  1. 从 XML 文件定义新的虚拟机:
virsh define vm-config.xml
  1. 连接到虚拟机控制台:
virsh console vm-name
  1. 显示虚拟机的 XML 配置:
virsh dumpxml vm-name
  1. 列出所有存储池:
virsh pool-list --all
  1. 列出所有网络:
virsh net-list --all

相关命令 #