• news
  • pics
  • linux
  • windows
  • proxmox
  • game
  • news
  • pics
  • linux
  • windows
  • proxmox
  • game
Home
proxmox

PVE直通核显给虚拟机

本教程在6.0测试通过

检查CPU是否支持VT-d:

https://ark.intel.com/content/www/cn/zh/ark.html

找到下面这项,显示是表示支持:

虚拟机创建的时候注意一下4点:

不要设置开机自启动

如果只是直通核显设备,不要像网上那些教程那样改什么BIOS和Machine,保持和下图一样的默认就行:

 一般直通GPU给虚拟机,虚拟机都是用Windows吧,我发现Proxmox上装Windows硬盘的总线/设备改为IDE,格式改为Raw的性能是最好的,另外如果宿主机是单盘(没有RAID阵列)就不要设置Writeback模式了,默认的最好:

CPU的模式选择Host,即尽量保证虚拟机内的CPU指令集和宿主机内一致。

现在配置直通相关的东西。

首先编辑GRUB配置文件:

nano /etc/default/grub

开启IOMMU支持:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off"

如果是AMD的CPU:

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on video=efifb:off"

更新GRUB:

update-grub

添加所需的系统模块(驱动):

echo "vfio" >> /etc/modules
echo "vfio_iommu_type1" >> /etc/modules
echo "vfio_pci" >> /etc/modules
echo "vfio_virqfd" >> /etc/modules

接着添加模块(驱动)黑名单,即让GPU设备在下次系统启动之后不使用这些驱动,把设备腾出来给vfio驱动用:

Intel核显:

echo "blacklist snd_hda_intel" >> /etc/modprobe.d/pve-blacklist.conf
echo "blacklist snd_hda_codec_hdmi" >> /etc/modprobe.d/pve-blacklist.conf
echo "blacklist i915" >> /etc/modprobe.d/pve-blacklist.conf

N卡/A卡:

echo "blacklist nouveau" >> /etc/modprobe.d/pve-blacklist.conf
echo "blacklist radeon" >> /etc/modprobe.d/pve-blacklist.conf

如果是N卡还需要加入下面的配置到kvm.conf(据老外说是避免一些莫名其妙的错误):

echo "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf

更新内核:

update-initramfs -u

重启机器:

reboot

重启上来之后检查模块是否正常加载:

lsmod | grep vfio

有类似回显说明正常:

vfio_pci               45056  1vfio_virqfd            16384  1 vfio_pci
irqbypass              16384  13 vfio_pci,kvm
vfio_iommu_type1       24576  1vfio                   28672  5 vfio_iommu_type1,vfio_pci

查看GPU设备ID:

lspci -nn | grep VGA

类似我的回显:

00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:1912] (rev 06)

再执行下面的命令:

lspci -vvv -s 00:02.0

看有没有Kernel driver in use这一行,正常情况下应该是没有的。

如果有那么就说明你之前肯定是哪里没配置好(一般是i915的驱动没屏蔽成功)。

直通完成后的截图:

现在把需要直通给虚拟机的设备ID写到vfio.conf内,注意这次这里的ID不是00:02.0而是自己查看自己设备的ID,ID查看在上面回显里:

echo "options vfio-pci ids=8086:1912" >> /etc/modprobe.d/vfio.conf

回到Proxmox的WEB界面,给需要直通GPU的虚拟机添加对应的PCI设备:

切记直通核显不要勾选这个主GPU的选项:

给虚拟机开机,先用VNC登录进去,登录进去之后开启RDP,然后退出来用远程桌面去登录。

之后去Inter的官网下载对应的驱动程序:

https://downloadcenter.intel.com/zh-cn/product/80939/-

我的系统win10,CPU i5-8400 核显630 下载对应驱动

直通完成:

Previous article Proxmox random crash : Inserted module 'iscsi_tcp'
Next article livego流媒体服务实现无插件播放视频(支持hls,flv)

therock

Meta
  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
Categories
  • game
  • linux
  • news
  • pics
  • proxmox
  • windows
Recent Posts
  • proxmox7.3直通显卡
  • Proxmox VE 直通显卡方案及解决N卡Code43
  • Linux系统出现:You have new mail in /var/spool/mail/root 的原因及解决办法
  • debian系统解决中文乱码
  • pve添加git和pvetools
Recent Comments
  • EdgarTot on proxmox7.3直通显卡
  • Ashvem on proxmox7.3直通显卡
  • Tedvem on proxmox7.3直通显卡
  • Jackvem on proxmox7.3直通显卡
  • Miavem on proxmox7.3直通显卡
Archives
  • March 2023 (1)
  • December 2022 (4)
  • November 2022 (6)
  • April 2022 (1)
  • February 2022 (5)
  • January 2022 (2)
  • December 2021 (3)
  • November 2021 (1)
  • October 2021 (2)
  • September 2021 (1)
  • August 2021 (1)
  • July 2021 (8)
  • June 2021 (14)
  • May 2021 (2)
  • April 2021 (2)
  • March 2021 (10)
  • January 2021 (4)
  • December 2020 (4)
  • November 2020 (13)
  • April 2020 (276)
  • March 2020 (1)
  • June 2019 (5)
  • May 2019 (10)
  • December 2015 (1)