显卡直通的前提条件是cpu支持虚拟化
印象中是inter芯片i5以上,本文的芯片是i5
主板是微星-迫击炮
-
需要开启虚拟化
-
需要开启VT-d
先看Bios界面,开机在启动页面按Delete或者Esc(每个主板都不同)
-
点击简体中文,切换语言
-
点击简易模式/高级模式,切换到高级模式
点击OC
选择CPU特征
把红框中的两个设置为开启(允许)
-
Inter虚拟化技术-允许
-
Inter VT-D技术-允许
先确保你的PVE有网,因为需要apt-get update
参考文章
<<HomeLab[PVE](X86_64):PVE宿主机无网,虚拟机有网>>
修改配置文件
nano /etc/default/grub
在文件中找到
GRUB_CMDLINE_LINUX_DEFAULT=”quiet”
改为
GRUB_CMDLINE_LINUX_DEFAULT=”quiet intel_iommu=on iommu=pt initcall_blacklist=sysfb_init”
注意本文为inter芯片,如果是amd,仅供参考
更新grub
update-grub
在/etc/modules中添加内容
执行命令
echo vfio >> /etc/modules
echo vfio_iommu_type1 >> /etc/modules
echo vfio_pci >> /etc/modules
echo vfio_virqfd >> /etc/modules
echo kvmgt >> /etc/modules
很多文章只需要前4个,第5个随意
查看确认/etc/modules内容
cat /etc/modules
显示红框内容说明配置正确
继续更新
update-initramfs -u
或者
update-initramfs -u -k all
更新完成后重启
reboot
重启后验证是否有效
dmesg | grep remapping
出现下面内容即为配置成功
显示为:DMAR-IR: Enabled IRQ remapping in x2apic mode
或显示为:AMD-Vi: Interrupt remapping enabled
本文为Inter,显示有第一句,说明配置成功
或者检测
dmesg | grep -e DMAR -e IOMMU -e AMD-Vi
看到IOMMU enabled说明虚拟化成功
完成以上检测,才能开启下面的设置(不确认开启虚拟化成功,就不用继续虚拟化了)
屏蔽驱动
nano /etc/modprobe.d/pve-blacklist.conf
添加以下内容
blacklist nvidiafb
blacklist nouveau
blacklist nvidia
blacklist radeon
blacklist amdgpu
blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi
blacklist snd_hda_codec
blacklist snd_hda_core
如果是NVIDA显卡,还需要执行(本文为NVIDA显卡)
echo "options kvm ignore_msrs=1 report_ignored_msrs=0" > /etc/modprobe.d/kvm.conf
查看刚刚的内容
cat /etc/modprobe.d/kvm.conf
确认添加成功
查看需要直通的显卡
lspci -knn | grep -i -A 2 vga
看到一个显卡设备,记得红框的ID
查看所有PCIe设备
lspci -nn
红框的第一个是显卡,第二个是声卡
记下它们[]中的id,后面会用到
显卡和声卡单独直通
记得把id换为你自己的
echo "options vfio-pci ids=10de:2504,10de:228e" > /etc/modprobe.d/vfio.conf
更新引导配置(更新后重启)
update-initramfs -u -k all
验证是否驱动直通成功
lspci -knn | grep -i -A 2 vga
看到以下字样说明成功:Kernel driver in use: vfio-pci
虚拟机前提条件
BIOS是UEFI
机型选择q35
在执行下面操作前,请先打开虚拟机
并且安装开自启动的远程控制软件,如向日葵,rustdesk等
因为一旦设置添加显卡,就无法通过web查看屏幕了,如果显示有问题,也无法通过物理线输出到屏幕,只能通过远程控制来更新驱动等操作
选择添加PCI设备
选择NVIDA显卡
把所有的选项都勾选上
把显示从默认改为无
有的文章说驱动提前放在U盘中,读取然后安装
有的说右键设备管理器,选择显示适配器,联网更新驱动
但是对于本文都没用
设置直通显卡后,远程屏幕变小了,无法正常打开页面,无法上下左右滑动
本文的第一个方案
首先是尝试鲁大师驱动更新,但是从浏览器下载鲁大师安装启动后
就停留在鲁大师的首页,无法左右上下滑动和拖动,无法操作界面,失败
如图,动弹不得
本文的第二个方案
从浏览器直接下载七彩虹或者NVIDA的显卡驱动
然后进行安装,安装到一半远程失去连接(安装成功会中途影响远程连接好几次,直接失联)
最后的结果
在第三次把win10刚安装好的纯净版还原后
正在下载NVIDA驱动的时候,win10远程的分辨率自己好了,底部也有NVIDA图标,不清楚它是自己联网更新驱动了还是有什么默认操作
总之就是直通显卡,纯净系统打开,它自己就是好的
后来不放心我又再次安装了NVIDA最新的驱动,没什么问题
至此显卡直通win10完成,在虚拟机鲁大师跑分测试,37万分左右
能检测到显卡,跑分也和网上的基本一致
本次显卡直通花了3个小时才成功
参考了网上的文章几十篇,重启了N次
本文配置
-
PVE7.4-3(版本很重要,7.1和7.2都只能仅供参考)
-
Inter i5(AMD的配置有很多不一样)
-
NVIDA独立显卡(RTX 3060)(本文非核显直通)
虚拟机在正确的配置下,也会无法启动WIN10,并且内存爆满
本文是在还原win10安装成功后的第一次备份,才测试成功
END.
公众号发送关键词加群
,加入交流群
觉得本文还行,不妨顺手点赞和收藏,下期见。
推荐阅读
<<HomeLab[PVE](X86_64):PVE宿主机无网,虚拟机有网>>
☕ 朋友,都看到这了,确定不关注一下么? 👇