获取虚拟机的MAC地址
ubuntu20.04改为 你的虚拟主机名
virsh --connect qemu:///system dumpxml ubuntu20.04 | grep 'mac address'
输出
<mac address='0f:0f:1f:df:0f:0f'/>‘
虚拟机的mac地址
0f:0f:1f:df:0f:0f
: 获取到后地址保存一下,下面会用到
查看宿主机
virsh --connect qemu:///system net-list
输出
Name State Autostart Persistent
--------------------------------------------
default active yes yes
编辑 默认
virsh --connect qemu:///system net-edit default
在XML下中增加(host部分)
<network>
<name>default</name>
<uuid>1191f4ad-1852-42cc-9bab-04ee8dc67bd9</uuid>
<forward mode='nat'/>
<bridge name='virbr0' stp='on' delay='0'/>
<mac address='03:04:10:d0:07:0f'/>
<ip address='192.168.122.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
<host mac='0f:0f:1f:df:0f:0f' name='ubuntu20.04' ip='192.168.122.253'/>
</dhcp>
</ip>
</network>
0f:0f:1f:df:0f:0f
为 上面第一条命令获取到的地址(虚拟机的mac地址 )
主要是 <host mac='0f:0f:1f:df:0f:0f' name='ubuntu20.04' ip='192.168.122.253'/>
这一段
保存,重启网络
virsh --connect qemu:///system net-destroy default
virsh --connect qemu:///system net-start default
最后,重启虚拟机后生效
virsh reboot ubuntu20.04
注意有些虚拟机内系统不支持 ,需要到虚拟机系统内重启
其他命令
查看在运行的虚拟机
virsh list
查看创建的所有虚拟机
virsh list --all
启动虚拟机
virsh start ubuntu20.04
ubuntu20.04是虚拟机的 名称
关闭虚拟机(优雅的)
virsh shutdown ubuntu20.04
需要ACPID服务的支持,ACPI是Advanced Configuration and PowerInterface缩写,高级配置和电源管理接口
重启虚拟机
virsh reboot ubuntu20.04
挂起虚拟机
virsh suspend ubuntu20.04
恢复被挂起的虚拟机
virsh resume ubuntu20.04
开机启动虚拟机
virsh autostart ubuntu20.04
即在虚拟机服务(libvirt)启动的时候,就启动虚拟机。
关闭开机启动虚拟机
virsh auto start --disable ubuntu20.04
强制关闭虚拟机
virsh destory ubuntu20.04
这种方式是从virsh list列表中将虚拟机删除,仍然可以start起来
启动默认的网络
virsh net-start default
自启动默认网络
virsh net-autostart default
彻底删除虚拟机步骤
1)关闭虚拟机:
virsh destroy ubuntu20.04
2)删除定义:
virsh undefine ubuntu20.04
3)删除虚拟机文件
在/var/lib/libvirtd/下的相关文件
更多命令
virsh help
参考
https://www.jianshu.com/p/daacaeb0766e
https://www.cnblogs.com/yangruizeng/p/7510521.html