virsh命令的使用

virsh 是一个用于管理虚拟机的命令行工具,它与 libvirt 服务配合使用,支持对虚拟机的创建、配置、启动、停止等操作。

1、列出虚拟机

列出正在运行的虚拟机:

bash 复制代码
virsh list

列出所有虚拟机(包括未启动的):

bash 复制代码
virsh list --all

2、启动和关闭虚拟机

启动虚拟机:

bash 复制代码
virsh start <vm_name or id>

停止虚拟机(通过发送ACPI关机信号):

bash 复制代码
virsh shutdown <vm_name or id>

强制关闭虚拟机(类似于拔掉电源):

bash 复制代码
virsh destory <vm_name or id>

重启虚拟机

bash 复制代码
virsh reboot <vm_name or id>

3、创建和删除虚拟机

创建虚拟机(从xml配置文件):

bash 复制代码
virsh create <config_file.xml>

定义虚拟机(从xml配置文件,定义虚拟机但不启动):

bash 复制代码
virsh define <config_file.xml>

删除虚拟机(仅删除虚拟机定义,不删除磁盘文件):

bash 复制代码
virsh undefine <vm_name or id>

删除虚拟机及其磁盘文件:

bash 复制代码
virsh undefine <vm_name or id> --remove-all-storage

4、修改虚拟机配置

编辑虚拟机配置(打开xml编译器):

bash 复制代码
virsh edit <vm_name or id>

查看虚拟机xml配置

bash 复制代码
virsh dumpxml <vm_name or id>

5、管理虚拟机快照

列出虚拟机的快照:

bash 复制代码
virsh snapshot-list <vm_name or id>

创建虚拟机快照

bash 复制代码
virsh snapshot-create-as <vm_name or id> <snapshot_name> --description "Snapshot description"

恢复虚拟机快照

bash 复制代码
virsh snapshot-revert <vm_name or id> <snapshot_name>

删除虚拟机快照

bash 复制代码
virsh snapshot-delete <vm_name or id> <snapshot_name>

6、虚拟机信息

查看虚拟机详细信息

bash 复制代码
virsh dominfo <vm_name or id>

查看虚拟机的CPu使用情况

bash 复制代码
virsh cpu-stats <vm_name or id>

7、网络和存储管理

列出虚拟网络

bash 复制代码
virsh net-list --all

启动/停止虚拟网络

bash 复制代码
virsh net-start <network_name>
virsh net-stop <network_name>

列出存储池

bash 复制代码
virsh pool-list --all

启动/停止存储池

bash 复制代码
virsh pool-start <pool_name>
virsh pool_stop <pool_name>

8、监控和调试

监控虚拟机的实时状态

bash 复制代码
virsh list --state-running

查看虚拟机的详细日志(可能需要访问虚拟机的日志文件):

bash 复制代码
virsh log <vm_name or id>
相关推荐
byte轻骑兵1 小时前
【Linux文件系统】Linux文件系统与设备驱动
linux·运维·服务器
Lethehong3 小时前
在 CentOS 7 上搭建 OpenTenBase 集群:从源码到生产环境的全流程指南
linux·运维·centos·tdsql·opentenbase·腾讯云数据库
Hard but lovely3 小时前
vim的使用
linux·编辑器·vim
知白守黑2674 小时前
KVM虚拟化
linux·运维·架构·centos
G_H_S_3_6 小时前
【网络运维】Linux 文本搜索利器: grep命令
linux·运维·网络·操作文本
程序员 _孜然14 小时前
Ubuntu/Debian修改网卡名字enP3p49s0为eth0
linux·运维·驱动开发·嵌入式硬件·ubuntu·debian
IDIOT___IDIOT15 小时前
Linux mount 命令
linux·运维·服务器
暗流者15 小时前
AAA 服务器与 RADIUS 协议笔记
运维·服务器·笔记
CTRA王大大16 小时前
【golang】制作linux环境+golang的Dockerfile | 如何下载golang镜像源
linux·开发语言·docker·golang
小张程序人生16 小时前
《VMware 安装 CentOS 7.9 虚拟机详细教程(含图解步骤)》
linux·centos