Libvirt
- libvirt, libvirt是一套用于管理硬件虚拟化的开源API、守护进程与管理工具。此套组可用于管理KVM、Xen、VMware ESXi、QEMU及其他虚拟化技术。libvirt内置的API广泛用于云解决方案开发中的虚拟机监视器编排层(Orchestration Layer)。
-
- 检查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