千家信息网

kvm命令基础1

发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,(1) 查看虚拟机列表 virsh list[root@kvm ~]# virsh list//正在运行的虚拟机,如果想查看所有加 -all[root@kvm ~]# virsh list -all
千家信息网最后更新 2024年11月19日kvm命令基础1

(1) 查看虚拟机列表 virsh list

[root@kvm ~]#  virsh list//正在运行的虚拟机,如果想查看所有加 -all


[root@kvm ~]# virsh list -all

·
(2) 查看虚拟机详细信息
[root@kvm ~]# virsh dominfo test1 (dominfo 域)

(3) 虚拟机的开关机

[root@kvm ~]# virsh  start test1 //(开机)


验证一下
[root@kvm ~]# virsh list

[root@kvm ~]# virsh shutdown test01 //(关机温柔的关机)


验证一下
[root@kvm ~]# virsh list -all

再次开启一下查看id是否变化

[root@kvm ~]# virsh  start test1[root@kvm ~]# virsh  list -all

[root@kvm ~]# virsh destroy test1 //(强制关机)类似于拔电源


(4) 导出配置

[root@kvm ~]# virsh dumpxml test1 > test1.xml   //目前到处位置是/root/

一个完整的kvm域,生成之后会有两个文件。
1) 磁盘文件,在部署之处已经指定
2) Xml配置文件,默认在/etc/libvrit/qemu

删除一下虚拟机的配置文件

[root@kvm kvm-vm]# rm -rf /etc/libvirt/qemu/test1.xml[root@kvm ~]# virsh list -all


[root@kvm ~]# ls /kvm-vm/

删除配置文件对磁盘文件不会有影响

(5) 删除虚拟机

[root@kvm ~]# virsh  start test1  //开启虚拟机[root@kvm ~]#  virsh destroy test1 //强制关闭虚拟机

[root@kvm ~]# virsh undefine test1//删除与虚拟机关联的所有文件

[root@kvm ~]# virsh list -all

[root@kvm ~]# ls /etc/libvirt/qemu/

(6) 根据备份的配置文件恢复虚拟机

[root@kvm ~]# virsh define test1.xml  //定义备份虚拟机的配置文件[root@kvm ~]# virsh list -all


[root@kvm ~]# ls /etc/libvirt/qemu/ (查看一下配置文件是否存在)

(7)将域test01改名为bdqn01,并将其磁盘的名字改为bdqn01.raw,保证虚拟机能够正常运行
1)将磁盘名称修改并定义

 85  virsh  undefine test1//删除与虚拟机关联的所有文件   86  ls /etc/libvirt/qemu

   87  cd /kvm-vm/   88  mv test01.raw bdqn01.raw   //把磁盘名称改为bdqn01.raw   91  virsh define test1.xml //定义备份虚拟机的配置文件   94  virsh list --allvirsh start test1

2)修改配置文件(自带语法检查功能)

[root@kvm qemu]# virsh  edit test1 (修改配置文件)用edit修改完的文件和原来的不是同一个


如果修改了错了,退出时会出现如下界面

y:进行改正 n:不进行改正 i:忽略 f:强制

[root@kvm qemu]# virsh start test1//启动虚拟机


[root@kvm qemu]# virsh list --all

3) 重命名(7.2之前不支持)

[root@kvm ~]#  virsh destroy test1//关闭虚拟机[root@kvm qemu]# virsh domrename test1 bdqn01


[root@kvm qemu]# virsh list --all

(8),KVM域是由xml配置文件和磁盘文件组成的,那么是否可以通过复制这两个文件的方式生成新的虚拟机,如果可以,定义一个新的虚拟机,名称为:bdqn02

[root@kvm ~]# cd /kvm-vm/  //进入磁盘文件放置的目录[root@kvm kvm-vm]# cp bdqn01.raw  bdqn02.raw//复制一个磁盘[root@kvm kvm-vm]# cd /etc/libvirt/qemu///进入配置文件的目录[root@kvm qemu]# cp bdqn01.xml  bdqn02.xml//复制一个配置文件[root@kvm qemu]# vim bdqn02.xml//修改配置文件


[root@kvm qemu]# virsh define bdqn02.xml//定义虚拟机的配置文件


[root@kvm qemu]# virsh list -all

(9)KVM域是否能够ping的通外围,如果实现ping通外围。

[root@localhost ~]#  systemctl stop NetworkManager//停止此服务[root@localhost ~]# virsh iface-bridge ens33 br0//执行此命令时,若提示以下信息,不用在意,因为其已经存在了使用附加设备 br0 生成桥接 ens33 失败[root@localhost ~]#  ls /etc/sysconfig/network-scripts/ | grep br0#确定有此文件就行

[root@localhost ~]#  virsh destroy bdqn02//关闭虚拟机[root@localhost ~]#  virsh edit bdqn02//编辑虚拟机的配置文件,定位到interface      #将此处改为bridge       #删除Mac地址这行                #将此处更改为这样#保存退出即可

至此就配置完成了,运行虚拟机,更改其网卡配置文件,注意:虚拟机中配置的网关和kvm宿主机是一样的,它们现在处于同一个网段,虚拟机的网卡配置文件如下:
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
//设置网络

[root@localhost ~]# systemctl restart network
//重启网络

可以看到已经成功了

0