我正在尝试在 Gemini Lake 上全新安装 Proxmox 5.2,并且想为 Ubuntu 18 配置具有 IGD(图形)直通功能的虚拟机
基于ASRock J4105-ITX的计算机 asrock.com/mb/Intel/J4105-ITX/
标准安装运行正常,现在我想为装有 Ubuntu 18 的 VM 使用 HDMI 输出。
我已阅读完以下所有信息:
- https://pve.proxmox.com/wiki/Pci_passthrough
- https://forum.proxmox.com/threads/guide-intel-intergrated-graphic-passthrough.30451/
- https://redhat.com/archives/vfio-users/2017-April/msg00032.html
- https://forum.proxmox.com/threads/proxmox-5-0-kaby-lake-and-igd-graphics-passthrough-for-windows-10.36165/
我的设置如下:
- 全新安装 Proxmox 5.2
蛴螬:
vim /etc/default/grub
更改
GRUB_CMDLINE_LINUX_DEFAULT
行至
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb=off,vesafb=off"`
保存并退出
update-grub
黑名单模块:
vim /etc/modprobe.d/pve-blacklist.conf
添加以下行:
blacklist snd_hda_intel blacklist snd_hda_codec_hdmi blacklist i915
保存并退出
虚拟财务信息办公室(VFIO):
vim /etc/modules
添加以下行:
vfio vfio_iommu_type1 vfio_pci vfio_virqfd save and quit
Vga 适配器:
lspci -n -s 00:02 lspci command display 00:02.0 0300: 8086:3185 (rev 03) vim /etc/modprobe.d/vfio.conf
添加此行:
options vfio-pci ids=8086:3185
保存并退出
update-initramfs -u
虚拟机:
创建一个虚拟机 (id = 100),以 Ubuntu 18 iso 作为主启动
更改虚拟机的设置:
vim /etc/pve/qemu-server/100.conf
添加以下行:
machine: pc-i440fx-2.2 args: -device vfio-pci,host=00:02.0,addr=0x02 vga: none
保存并退出
重启服务器
启动虚拟机 100
VM 100 启动后立即初始化视频输出(清晰屏幕),但屏幕保持黑色。启动任务日志为:
no efidisk configured! Using temporary efivars disk.
kvm: -device vfio-pci,host=00:02.0,addr=0x02,x-igd-gms=1,x-igd-opregion=on: IGD device 0000:00:02.0 has no ROM, legacy mode disabled
TASK OK
我尝试在更改配置之前安装 Ubuntu,但没有帮助。
我现在应该怎么做?
答案1
您正在使用 UEFI 和旧版 BIOS 运行虚拟机。与 UEFI 配合使用的机器类型是 q35,而不是 i440fx。您应该将 BIOS 类型更改为 SeaBIOS,或将机器类型更改为 q35。如果您使用 UEFI 机器,则应从“添加硬件”菜单中添加 EFI 磁盘。