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>
相关推荐
The森几秒前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix
期待のcode15 分钟前
Redis的主从复制与集群
运维·服务器·redis
翼龙云_cloud17 分钟前
腾讯云代理商: Linux 云服务器搭建 FTP 服务指南
linux·服务器·腾讯云
纤纡.19 分钟前
Linux中SQL 从基础到进阶:五大分类详解与表结构操作(ALTER/DROP)全攻略
linux·数据库·sql
好好学习天天向上~~40 分钟前
6_Linux学习总结_自动化构建
linux·学习·自动化
REDcker40 分钟前
gRPC开发者快速入门
服务器·c++·后端·grpc
冉佳驹1 小时前
Linux ——— 静态库和动态库的设计与使用
linux·动态库·静态库·fpic
陌上花开缓缓归以1 小时前
linux mtd-utils使用源码分析(ubuntu测试版)
linux·arm开发·ubuntu
江湖有缘1 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
wangjialelele2 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发