====== Libvirt ====== * [[wp>libvirt]], libvirt是一套用于管理硬件虚拟化的开源API、守护进程与管理工具。此套组可用于管理KVM、Xen、VMware ESXi、QEMU及其他虚拟化技术。libvirt内置的API广泛用于云解决方案开发中的虚拟机监视器编排层(Orchestration Layer)。 * [[https://libvirt.org/|Official site]] * [[https://libvirt.org/formatdomain.html|Domain XML format]] * [[https://www.cnblogs.com/sammyliu/p/4558638.html|libvirt 介绍]] * [[https://www.cnblogs.com/qiuhom-1874/p/13499801.html|虚拟化技术之kvm基础]] * [[https://www.cnblogs.com/qiuhom-1874/p/13508231.html|常用基础工具、命令]] * 检查CPU是否支持虚拟化 ''grep -E "vmx|svm" /proc/cpuinfo '', 或 ''lscpu | grep -E "vmx|svm" '' ===== Tips ===== * virsh list --all * xml 位置 ''/etc/libvirt/qemu/'' * xml 校验 virt-xml-validate /path/to/XML/file * 手动修改xml后重新载入:virsh define /etc/libvirt/qemu/your-xml-name.xml ===== IDV显卡回挂 ===== - 以下步骤在 ubuntu 18.04 环境。查看系统内核版本(内核版本很重要) root@Default:~# uname -a Linux troila-Default-string 5.3.0-53-generic #47~18.04.1-Ubuntu SMP Thu May 7 13:10:50 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux - 查看显卡设备 root@troila-Default-string:~# lspci 00:02.0 VGA compatible controller: Intel Corporation Skylake GT2 [HD Graphics 520] (rev 07) - 查看显卡的vid,pid root@Default:~# lspci -n 00:02.0 0300: 8086:1916 (rev 07) - 挂载显卡 systemctl restart getty@tty1.service   #停止gdm sleep 1 echo "8086 1916" > /sys/bus/pci/drivers/vfio-pci/new_id    #创建虚拟机所用驱动id echo "0000:00:02.0" > /sys/bus/pci/devices/0000\:00\:02.0/driver/unbind  #解绑i915驱动与显卡设备 echo "0000:00:02.0" > /sys/bus/pci/drivers/vfio-pci/bind     #绑定vfio驱动到显卡 echo "8086 1916" > /sys/bus/pci/drivers/vfio-pci/remove_id   #移动id 注:执行后,依赖gnome的进程(包括隐藏窗口的进程)都会变成僵尸进程 - 显卡回挂 echo -n "0000:00:02.0" > /sys/bus/pci/devices/0000\:00\:02.0/driver/unbind   #解绑vfio与显卡设备 echo -n "0000:00:02.0" > /sys/bus/pci/drivers/i915/bind     #i915驱动绑定到显卡上 systemctl restart display-manager   #重启gdm