pve虚拟机显卡直通教程 | 您所在的位置:网站首页 › 显卡代码查询 › pve虚拟机显卡直通教程 |
pve虚拟机pcie直通教程文章时效一定要看!!! 不同版本配置天差地别,请勿用于6.x以外的版本本文写作基于新建博文时镜像版本: pve6.2-4最后一次更新时版本: pve6.2-15新建博文关键软件包版本: pve-qemu-kvm: 5.1.0-2最后一次更新时关键软件包版本: pve-qemu-kvm: 5.1.0-6 1. 开启iommu 先进入bios打开VT-d虚拟化选项。 修改启动参数编辑/etc/default/grub nano /etc/default/grub找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"替换为GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off,vesafb:off"如果是amd平台替换为GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on video=efifb:off,vesafb:off" 解释: iommu开启直通分组 efifb:off 禁用efi启动的显示设备 vesafb:off 禁用legacy启动的显示设备替换后执行以下命令更新grub: update-grub 2. 加载模块编辑/etc/modules nano /etc/modules添加以下几个模块,直接复制即可。 vfio vfio_iommu_type1 vfio_pci vfio_virqfd 3. 阻止驱动加载(显卡直通时才需要操作)因为pve启动时会尝试加载显卡驱动,为了避免pve占用显卡,需要阻止pve的显卡驱动加载。 3.1 添加驱动黑名单编辑/etc/modprobe.d/pve-blacklist.conf nano /etc/modprobe.d/pve-blacklist.conf添加以下内容 # block AMD driver blacklist radeon blacklist amdgpu # block NVIDIA driver blacklist nouveau blacklist nvidia blacklist nvidiafb # block INTEL driver blacklist snd_hda_intel blacklist snd_hda_codec_hdmi blacklist i915 3.2 添加显卡到直通设备中查看所有pci设备。 lspci找到显卡后记下硬件id,形式是xxxx:xxxx,比如G5400的核心显卡的硬件id是8086:3e90。编辑/etc/modprobe.d/vfio.conf nano /etc/modprobe.d/vfio.conf添加以下内容注意!!!!把8086:3e90换成你的显卡的硬件id options vfio-pci ids=8086:3e90 4. 重启一定要确认机器正常重启,重启后屏幕会卡在第二行好像是initramfs(写博客的时候机器不在手边,不记得具体显示什么了,下次折腾的时候再补充。反正屏幕卡住说明阻止了驱动加载) 5. 配置虚拟机 机器设置为q35 点击添加设备,PCI设备,找到显卡对应的设备。 打开全部功能 PCI Express 启动机器,安装驱动 6. 一些大坑6.1 intelintel的坑比较多 intel有多种直通方案,分别是gpu虚拟化以及传统直通。当前版本(PVE6.2-4镜像)(pve-qemu-kvm 5.1.0-2)存在有关intel显卡的bug,社区在2020年上半年已经有优化intel直通的提案,不久后在pve-qemu-kvm 5.1.0-5版本中添加了这一特性。目前(2020-10-06)此版本仍然没有进入测试版分支,所以只有两个方案:自己编译或再等一万年。(2020-11-04)更新博文时,5.1.0-4版本已经发布,-5还会远吗,继续等等 (2020-11-24)5.1.0-5他终于更了,可以直接添加legacy-igd=1 intel的显卡vbios因板而异,不同主板的vbios对efi和legacy的支持水平参差不齐,我使用的主板恰好支持差,直通后HDMI与VGA口均不输出信号,但是驱动可以正常加载,解决方案是使用rom-parser和rom-fixer工具(github仓库地址)编辑提取出来的vbios(挖坑:这里会开一篇教程文章),并且将修改好的vbios文件复制到/usr/share/kvm,并且在显卡pcihost后添加romfile=”xxx.rom”手动加载vbios。说点题外话,提取的vbios可以测试兼容性。./rom-parser /tmp/xxx 如果有 PCIR: type 3说明支持efi启动,建议更换bios为OVMF。 驱动问题,直通windows,设备管理器显卡感叹号,提示代码43。算是直通成功一半了,但是这种情况处理起来比较复杂。有些情况下代码43显卡仍然可以正常工作,这种情况通常不用理会。如果工作不正常可以考虑下载安装老版本的驱动程序(我用windows自动安装的一切正常 6.2 nvidia有卡还没测,可以先等一万年,会更的。2020-11-4上周尝试直通GTX 1080Ti一次成功…N卡直通没啥坑,放心通就好了官方文档提到需要添加以下内容 echo "options kvm ignore_msrs=1 report_ignored_msrs=0" > /etc/modprobe.d/kvm.confNVIDIA Kepler K80 GPUs需要在虚拟机配置文件中添加 args: -machine pc,max-ram-below-4g=1G此外还必须进行以下操作,否则驱动出错:WebUI中:对应虚拟机->硬件->显卡对应的PCI设备(双击)->勾选x-vga(主GPU)或者修改虚拟机配置文件,在hostpci:后添加x-vga=1 驱动安装NVIDIA GeForce GTX1080Ti Ubuntu20.04 LTS驱动安装 nvidia-docker2020-11-24 待更新(挖坑:这里会开一篇文章) 6.3 amd有卡还没测,可以再等一万年,在试了。 效果图: Proxmox VE pve direct pcie iommu本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处! LXC安装JellyFin并轻松开启硬件编码 上一篇 低至2元/年!搭建个人博客 下一篇 |
CopyRight 2018-2019 实验室设备网 版权所有 |