KVM命令行使用[rootKVM1 ~]# virsh version #查看KVM版本Compiled against library: libvirt8.0.0 Using library: libvirt8.0.0 Using API: QEMU8.0.0 Running hypervisor: QEMU6.2.0[rootKVM1 ~]# virsh --help #virsh命令帮助[rootKVM1 ~]# virsh shutdown win7 #关机Domainwin7is beingshutdown[rootKVM1 ~]# virsh list #列出正在运行中的虚拟机Id Name State --------------------[rootKVM1 ~]# virt-manager #调出图形界面[rootKVM1 ~]# virsh list --all #列出所有状态的虚拟机Id Name State ----------------------- - win7 shut off[rootKVM1 ~]# virsh start win7 #开启虚拟机win7Domainwin7started[rootKVM1 ~]# virsh list #查看虚拟机win7的开机状态Id Name State ----------------------1win7 running#后续操作该虚拟机可以用Namewin7操作也可以用该虚拟机的ID“1”操作[rootKVM1 ~]# virsh reboot win7 #重启虚拟机win7Domainwin7is being rebooted[rootKVM1 ~]# virsh shutdown win7 #正常关机一般都是正常关机Domainwin7is beingshutdown[rootKVM1 ~]# virsh start win7 #开启虚拟机win7Domainwin7started[rootKVM1 ~]# virsh destroy win7 #强制关闭虚拟机(拔电源)系统无法响应实在没办法再强制关机 Domainwin7destroyed[rootKVM1 ~]# virsh start win7 #开启虚拟机win7Domainwin7started[rootKVM1 ~]# virsh suspend win7 #挂起虚拟机将虚拟机的内存数据保存到硬盘然后CPU、内存释放比如我去吃个午饭 Domainwin7suspended[rootKVM1 ~]# virsh list #查看虚拟机状态Id Name State ---------------------2win7 paused#显示虚拟机状态为paused挂起[rootKVM1 ~]# virsh resume win7 #恢复虚拟机状态Domainwin7resumed[rootKVM1 ~]# virsh list #查看虚拟机状态Id Name State ----------------------2win7 running#显示虚拟机状态为running[rootKVM1 ~]# virsh start win7 #虚拟机win7开机Domainwin7started[rootKVM1 ~]# virsh autostart win7 #设置虚拟机随着KVM一起开机Domainwin7marked as autostarted[rootKVM1 ~]# virsh list --autostart #列出随着宿主机一起开机的虚拟机有哪些Id Name State ----------------------1win7 running查看虚拟机配置文件[rootKVM1 ~]# virsh dumpxml win7 #查看虚拟机win7配置文件[rootKVM1 images]# virsh edit win7 #修改虚拟机win7配置文件[rootKVM1 images]# virsh vcpucount --active win7 #查看win7虚拟机配置的cpu数量2[rootKVM1 ~]# cd /var/lib/libvirt/images/ #默认磁盘存放目录[rootKVM1 images]# lswin7.qcow2#win7虚拟机硬盘[rootKVM1 images]# ll -h #查看win7虚拟机磁盘长列表信息total7.7G -rw-------.1qemu qemu 41G Sep312:00 win7.qcow2[rootKVM1 images]# qemu-img --help #操作qemu硬盘的命令qemu-img version6.2.0(qemu-kvm-6.2.0-49.module_el8991097e156d)Copyright(c)2003-2021 Fabrice Bellard and the QEMU Project developers usage: qemu-img[standard options]command[command options]QEMU disk image utility-h,--helpdisplay thishelpandexit-V,--versionoutput version information andexit-T,--trace[[enable]pattern][,eventsfile][,filefile]specify tracing options[rootKVM1 images]# qemu-img info win7.qcow2 #查看win7虚拟机硬盘简要信息虚拟机关机状态下看 image: win7.qcow2fileformat: qcow2#硬盘格式virtual size:40GiB(42949672960bytes)disk size:7.66GiB#占用磁盘大小cluster_size:65536Snapshot list:#快照信息ID TAG VM SIZE DATE VM CLOCK ICOUNT1win70B2024-09-03 09:54:06 00:00:00.0000Format specific information: compat:1.1compression type: zlib lazy refcounts:truerefcount bits:16corrupt:falseextended l2:false[rootKVM1 images]#命令行创建虚拟机[rootKVM1 ~]# cd /var/lib/libvirt/images/[rootKVM1 images]# qemu-img create -f qcow2 vm2.qcow2 20G #给虚拟机VM2创建硬盘vm2.qcow2 Formattingvm2.qcow2,fmtqcow2cluster_size65536extended_l2offcompression_typezlibsize21474836480lazy_refcountsoffrefcount_bits16[rootKVM1 images]# lsvm2.qcow2 win7.qcow2[rootKVM1 images]# qemu-img info vm2.qcow2 #显示创建出来的新的虚拟机硬盘vm2.qcow2属性 image: vm2.qcow2fileformat: qcow2 virtual size:20GiB(21474836480bytes)disk size:196KiB cluster_size:65536Format specific information: compat:1.1compression type: zlib lazy refcounts:falserefcount bits:16corrupt:falseextended l2:false[rootKVM1 images]# virt-install --help #命令行创建虚拟机命令virt-install#参考前面的步骤上传一个CentOS-7-x86_64-Minimal-1810.iso到/iso目录# 前面已经给VM2创建过磁盘但是我不用我想试下不在默认目录创建磁盘[rootKVM1 iso]# mkdir /disk[rootKVM1 iso]# qemu-img create -f qcow2 /disk/vm2.qcow2 20G #创建vm2.qcow2磁盘[rootKVM1 iso]# virt-install --name vm2 --memory 4096 --vcpus 2 --diskpath/disk/vm2.qcow2--location/iso/CentOS-7-x86_64-Minimal-1810.iso--networknetworkdefault--noautoconsole#CentOS-7-x86_64-Minimal-1810.iso自己上传到/iso目录 Starting install... Retrievingfilevmlinuz...|6.3MB 00:00:00 Retrievingfileinitrd.img...|50MB 00:00:00 Domain is still running. Installation may beinprogress. You can reconnect to the console to complete the installation process.#--name 指定虚拟机名字#--memory 指定虚拟机内存#--vcpus 指定虚拟机的CPU数量#--disk path 指定虚拟机的磁盘位置#--location 指定光盘镜像的位置#--network 指定网络KVM默认有个网络名为default的NAT网络[rootKVM1 iso]# virsh list #查看创建的vm2Id Name State ----------------------1win7 running2vm2 running#命令行创建出来的虚拟机怎么用呢通过VNC连到虚拟机中去再创建个vm3虚拟机通过VNC管理[rootKVM1 ~]# qemu-img create -f qcow2 /disk/vm3.qcow2 20G[rootKVM1 ~]# virt-install --name vm3 --memory 2048 --vcpus 1 --diskpath/disk/vm3.qcow2--location/iso/CentOS-7-x86_64-Minimal-1810.iso--networknetworkdefault--noautoconsole--vnclisten0.0.0.0--vncport5903--vnc#--vnclisten 设置VNC监听地址所有地址#--vncport5903 宿主机监听到5093的VNC请求转到vm3虚拟机上[rootKVM1 ~]# systemctl stop firewalld.servicevnc链接192.168.108.101:5903