ESXI 8U2直通显卡记录

816 阅读1分钟

涉及版本

OS: ESXi 8.0 u2
OS: Ubuntu 22.04
kernel: Linux ubuntu 5.15.0-89-generic
nvidia-driver: 535.129.03

配置

ESXi 主机配置

  1. 主机 BIOS 开启 VT-d。
  2. 配置显卡直通。 image.png

虚拟机配置

  1. CPU 开启 I/O MMU,关闭硬件虚拟化 image.png
  2. 引导选项 关闭安全引导
    image.png
  3. 添加 PCI设备 image.png

虚拟机内安装驱动

#禁用nouveau
touch /etc/modprobe.d/blacklist-nvidia-nouveau.conf 
cat >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf << EOF 
blacklist nouveau 
options nouveau modeset=0 
EOF

touch /etc/modprobe.d/nvidia.conf 
cat >> /etc/modprobe.d/nvidia.conf << EOF 
options nvidia NVreg_OpenRmEnableUnsupportedGpus=1 
EOF

sudo update-initramfs -u
sudo reboot

wget "https://us.download.nvidia.cn/XFree86/Linux-x86_64/535.129.03/NVIDIA-Linux-x86_64-535.129.03.run" -O NVIDIA-Linux-x86_64-535.129.03.run

sudo apt install build-essential 
sudo apt install pkg-config libglvnd-dev 
sudo chmod u+x NVIDIA-Linux-x86_64-535.129.03.run
# 如不带 -m=kernel-open 参数,kernel日志中会出现 RmInitAdapter failed! (0x26:0x56:1482) 报错。
./NVIDIA-Linux-x86_64-535.129.03.run -m=kernel-open 

其他

#该日志并不影响驱动安装
kernel: nvidia: loading out-of-tree module taints kernel.
kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
#lshw -C display
  *-display
       description: VGA compatible controller
       product: NVIDIA Corporation
       vendor: NVIDIA Corporation
       physical id: 1
       bus info: pci@0000:02:01.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list
       configuration: driver=nvidia latency=0
       resources: irq:40 memory:fd000000-fdffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:a00(size=128)
lsmod | grep nvidia
nvidia_uvm           1519616  8
nvidia_drm             77824  0
nvidia_modeset       1445888  1 nvidia_drm
nvidia               7577600  128 nvidia_uvm,nvidia_modeset
drm_kms_helper        311296  2 vmwgfx,nvidia_drm
drm                   622592  7 vmwgfx,drm_kms_helper,nvidia,nvidia_drm,ttm