virsh命令总结

发布于:2024-08-08 ⋅ 阅读:(297) ⋅ 点赞:(0)

以下是一些常用的 virt 命令及其参数的总结。

命令 描述 参数示例
virt-install 创建新的虚拟机 virt-install --name=vm1 --memory=1024 --vcpus=2 --disk path=/path/to/disk.img,format=qcow2,size=10 --network network=default --os-variant=ubuntu18.04 --cdrom /path/to.iso
virsh list 列出所有虚拟机 virsh list --all
virsh start 启动虚拟机 virsh start vm1
virsh shutdown 正常关闭虚拟机 virsh shutdown vm1
virsh destroy 强制关闭虚拟机 virsh destroy vm1
virsh suspend 暂停虚拟机 virsh suspend vm1
virsh resume 恢复暂停的虚拟机 virsh resume vm1
virsh suspend 挂起虚拟机,将虚拟机的状态保存到内存中,但不占用 CPU 资源 virsh suspend VM_NAME
virsh resume 恢复挂起的虚拟机,使虚拟机从挂起状态继续运行 virsh resume VM_NAME
virsh reboot 重启虚拟机 virsh reboot vm1
virsh undefine 删除虚拟机(不会删除磁盘文件) virsh undefine vm1
virsh define 从 XML 文件定义一个新的虚拟机 virsh define /path/to/vm1.xml
virsh edit 编辑虚拟机的 XML 配置 virsh edit vm1
virsh dominfo 显示虚拟机的信息 virsh dominfo vm1
virsh domblklist 列出虚拟机的块设备 virsh domblklist vm1
virsh domiflist 列出虚拟机的网络接口 virsh domiflist vm1
virsh snapshot-create 创建虚拟机的快照 virsh snapshot-create vm1
virsh snapshot-list 列出虚拟机的快照 virsh snapshot-list vm1
virsh snapshot-delete 删除虚拟机的快照 virsh snapshot-delete vm1 snapshot_name
virt-clone 克隆一个虚拟机 virt-clone --original vm1 --name vm2 --file /path/to/vm2.img
virt-viewer 启动虚拟机的图形界面 virt-viewer vm1
virt-top 显示虚拟机的资源使用情况 virt-top
virt-df 显示虚拟机的磁盘使用情况 virt-df vm1
virt-xml 编辑虚拟机的 XML 配置(不启动编辑器) virt-xml vm1 --edit
命令 描述 参数示例
virsh autostart 设置虚拟机在宿主机启动时自动启动 virsh autostart VM_NAME
virsh autostart --disable 禁止虚拟机在宿主机启动时自动启动 virsh autostart --disable VM_NAME
virsh dumpxml 输出虚拟机的 XML 配置 virsh dumpxml VM_NAME
virsh setmaxmem 设置虚拟机的最大内存 virsh setmaxmem VM_NAME 4096
virsh setmem 设置虚拟机的内存 virsh setmem VM_NAME 2048
virsh setvcpus 设置虚拟机的 CPU 数量 virsh setvcpus VM_NAME 2
virsh setmaxvcpus 设置虚拟机的最大 CPU 数量 virsh setmaxvcpus VM_NAME 4
virsh snapshot-create-as 创建虚拟机的快照,并指定快照名称和描述 virsh snapshot-create-as VM_NAME snapshot_name "Snapshot Description"

 设置虚拟机在宿主机启动时自动启动和禁止虚拟机在宿主机启动时自动启动的原理:

[root@kvm-server images]# virsh autostart vm10
域 'vm10' 标记为自动启动

[root@kvm-server autostart]# ll /etc/libvirt/qemu/autostart/
总用量 0
lrwxrwxrwx 1 root root 26  8月  6 20:32 vm10.xml -> /etc/libvirt/qemu/vm10.xml

[root@kvm-server autostart]# virsh autostart --disable vm10
域 'vm10' 未标记为自动启动

[root@kvm-server autostart]# ll /etc/libvirt/qemu/autostart/
总用量 0
[root@kvm-server autostart]# 

自动启动和禁止自动启动虚拟机的原理是基于符号链接(symlink)的机制:

1. 自动启动虚拟机

  • 当你使用 virsh autostart VM_NAME 命令时,libvirt 会在 /etc/libvirt/qemu/autostart/ 目录下创建一个指向该虚拟机 XML 配置文件的符号链接。
  • 这个符号链接的名称通常与虚拟机的名称相同,扩展名为 .xml
  • 例如,对于名为 vm10 的虚拟机,符号链接可能看起来像这样:vm10.xml -> /etc/libvirt/qemu/vm10.xml
  • 当宿主机启动时,libvirt 服务会检查 autostart 目录下的所有符号链接,并自动启动这些链接指向的虚拟机。

2. 禁止自动启动虚拟机

  • 当你使用 virsh autostart --disable VM_NAME 命令时,libvirt 会删除 /etc/libvirt/qemu/autostart/ 目录下对应虚拟机的符号链接。
  • 删除这个符号链接后,libvirt 在宿主机启动时就不会自动启动这个虚拟机了。

网站公告

今日签到

点亮在社区的每一天
去签到