1、作用
2、虚拟机关机
2.1、命令介绍
2.1.1、正常关机
virsh shutdown 虚拟机名称
服务方面的【注意事项】:
shutdown方法依赖于acpid服务,所以要保证我们的操作系统有acpid服务
对于ubuntu系统来说,它会自动安装相关软件并运行该服务
对于centos系统来说,它需要手工安装并启动
yum install acpid -y
systemctl start acpid
systemctl enable acpid
操作时的【注意事项】:
使用shutdown关闭的时候,一定要避免资源冲突,特别是基于同一个配置文件创建出来的虚拟机。
如果出现这种情况的话,shutdown不管用,使用kill方式关闭或者强制关闭的方法,示例如下:
关闭虚拟机
# 强制关机方法
virsh destroy 虚拟机名字
# 使用kill方法
ps aux | grep CentOS
kill 6589
# 检查
virsh list --all
2.1.2、强制关机
命令格式:virsh destroy 虚拟机名称
从virsh状态表中直接删除,配置文件不受影响,并且将一个运行中的虚拟机强制关闭。
2.2、实操示例
2.2.1、正常关机
root@localhost:/etc/libvirt/qemu# virsh list
Id Name State
---------------------------------
9 CentOS-8-x86_64 running
# 正常关机
virsh shutdown CentOS-8-x86_64
root@localhost:/etc/libvirt/qemu# virsh list --all
Id Name State
------------------------------------
- CentOS-8-x86_64 shut off
2.2.2、强制关机
# 使用配置文件,创建多一个虚拟机,具体创建方法,参考:https://www.cnblogs.com/ygbh/p/17417881.html#_lab2_2_1
virsh start CentOS-8-x86_64-1
root@localhost:/etc/libvirt/qemu# virsh list
Id Name State
-----------------------------------
1 CentOS-8-x86_64-1 running
# 强制关闭虚拟机
virsh destroy CentOS-8-x86_64-1
root@localhost:/etc/libvirt/qemu# virsh list --all
Id Name State
------------------------------------
- CentOS-8-x86_64-1 shut off
3、删除虚拟机
3.1、命令介绍
命令格式:virsh undefine 虚拟机名称
删除其配置文件,virsh状态表中存在,关闭虚拟机后,状态表中删除。
3.2、实操示例
# 强制关闭
virsh destroy CentOS-8-x86_64-1
# 查看状态
root@localhost:/etc/libvirt/qemu# virsh list --all
Id Name State
------------------------------------
- CentOS-8-x86_64 shut off
- CentOS-8-x86_64-1 shut off
# 删除虚拟机
virsh undefine CentOS-8-x86_64-1
Domain 'CentOS-8-x86_64-1' has been undefined
# 状态表也删除了
root@localhost:/etc/libvirt/qemu# virsh list --all
Id Name State
----------------------------------
- CentOS-8-x86_64 shut off
# 配置文件也被删除了
root@localhost:~# ll /etc/libvirt/qemu
-rw------- 1 root root 7089 May 20 23:22 CentOS-8-x86_64.xml
drwxr-xr-x 3 root root 4096 May 20 15:16 networks/