ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

操作环境:

  • 设备型号:DELL T5820 工作站
  • 底层环境:ESXI 7.0 U3 for Dell Custom
  • 操作系统:Centos 7.9
  • 显卡型号:Quadro P2000 6G

操作步骤:

1、ESXI硬件管理中,勾选需要直通的显卡,并切换为直通模式。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

2、关闭虚拟机,在编辑设置中添加PIC设备,选择已直通的显卡信息。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

3、 配置虚拟机显卡设置参数

在编辑设置——虚拟机选项——编辑配置中搜索vga(Scalable Graphics Adapter | 可扩展图形适配器)关键词,将 svga.present的值修改为FALSE(关闭内置的虚拟显卡),将 svga.autodetect的值修改为 TRUE(开启显卡自动检测)。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

4、 进入虚拟机,检查显卡是否被系统识别

lspci | grep NVIDIA
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

5、检查系统是否开启 nouveau 驱动

(Nouveau 是一个开源项目,旨在为 NVIDIA 图形处理器提供高质量的自由软件驱动程序。它由 Linux 内核中的 KMS 驱动(nouveau),Mesa 中的 Gallium3D 驱动,以及 Xorg DDX(xf86-video-nouveau)组成。这个项目的目标是提供对 NVIDIA 显卡的完整支持,包括 2D/3D 加速、视频解码加速等功能。Nouveau 驱动程序是通过逆向工程 NVIDIA 的专有驱动程序开发的,因此它不受 NVIDIA 官方的支持。)


lsmod | grep nouveau    # 有输出代表已启用
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

6、 禁用 nouveau 驱动


vim /lib/modprobe.d/dist-blacklist.conf

将 nvidiafb 配置注释掉。


# blacklist nvidiafb

添加以下配置


blacklist nouveau
options nouveau modeset=0
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

7、 重建 initramfs image

( initramfs 是一个临时的文件系统,其中包含了必要的设备如硬盘、网卡、文件系统等的驱动以及加载驱动的工具及其运行环境,比如基本的C库,动态库的链接加载器等。)


# 备份一下
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
 
# 更新
dracut /boot/initramfs-$(uname -r).img $(uname -r) --force

8、将重建的 initramfs 同步至内核


# 安装依赖
yum install -y vim wget yum-util net-tools epel-release gcc gcc-c++ make dkms 
 
# 同步至内核
yum install -y "kernel-devel-uname-r == $(uname -r)"

9、重启系统使配置生效


reboot

10、再次验证 nouveau 驱动是否已禁用


lsmod | grep nouveau  # 没输出代表禁用生效

11、下载显卡驱动和CUDA计算驱动

下载地址:https://www.nvidia.cn/Download/Find.aspx?lang=cn

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

wget https://cn.download.nvidia.com/XFree86/Linux-x86_64/535.104.05/NVIDIA-Linux-x86_64-535.104.05.run
 
wget https://developer.download.nvidia.cn/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run

12、安装NVIDIA驱动


# 给run文件可执行权限 
chmod u+x NVIDIA-Linux-x86_64-535.104.05.run
 
# 安装 ,只安装驱动文件,不安装OpenGL文件
./NVIDIA-Linux-x86_64-535.104.05.run –no-opengl-files

安装时一些常用参数:

  • -no-x-check:这个参数用于告诉 NVIDIA 驱动程序在启动时不要检查 X.Org(Linux 系统中最常用的显示服务器)是否正在运行。在某些情况下,系统管理员可能希望在没有运行 X.Org 的情况下使用 NVIDIA 驱动程序,例如在运行命令行界面或使用其他显示服务器时。
  • -no-nouveau-check:这个参数用于阻止 NVIDIA 驱动程序检查系统中是否存在开源的 Nouveau 驱动程序。Nouveau 是 NVIDIA 显卡的开源驱动程序,但有时用户可能希望安装并使用 NVIDIA 的专有驱动程序而不是开源驱动程序。使用这个参数可以避免驱动程序之间的冲突。
  • -no-opengl-files:这个参数用于指示 NVIDIA 驱动程序在安装时不要替换系统的 OpenGL 库文件。OpenGL 是用于渲染 2D 和 3D 矢量图形的跨语言、跨平台的应用程序接口(API)。在某些情况下,系统管理员可能不希望 NVIDIA 驱动程序覆盖系统默认的 OpenGL 实现。
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

13、安装显卡驱动

① 在没有X.Org的情况下使用命令行方式进行安装,点击 OK

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

② 是否要安装 NVIDIA 的 32-bit 兼容性库?选择 NO,

然后会弹出提示安装64位的,选 YES。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

③ 否要将内核模块源代码注册到 DKMS(Dynamic Kernel Module Support)?选择YES。

  • 选择 “Yes” 允许 DKMS 自动为你的 NVIDIA 驱动程序模块构建新的版本,以匹配新安装的内核。这样做的好处是,当你的系统内核更新后,DKMS 将自动重建 NVIDIA 驱动模块,以确保驱动程序与新内核兼容。
  • 选择 “No” 意味着你将不会注册内核模块源代码到 DKMS。如果你不使用 DKMS,那么在内核更新后,你可能需要手动重新安装 NVIDIA 驱动程序,以确保它与新内核兼容。
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

什么是 DKMS :

如果要问 Linux 内核模块如何发布、安装。脑回路的第一反应肯定是 make && insmod。
上述方法可以满足嵌入式场景,因为嵌入式产品的软件是整体发布,包括:内核、模块、软件等交付件。但是在 PC/服务器 领域,各个组件都是互相独立的,如果一个模块基于内核 A 编译并发布,那用户更改内核后,之前发布的内核模块就不能用了。
所以,DELL 发布了 DKMS,全称 Dynamic Kernel Module System。可以做到内核变更后自动编译模块,适配新内核

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

④ 是否要运行 nvidia-xconfig 工具来自动更新你的 X 配置文件?选择 YES。

  • 选择 “Yes” 将会执行以下操作:
  1. nvidia-xconfig 工具会被运行,它会自动更新 /etc/X11/xorg.conf 文件(或者对应于你使用的显示服务器的配置文件)。
  2. 如果该配置文件已经存在,nvidia-xconfig 会创建一个备份副本,通常是在文件名后加上一个 .backup 后缀。
  3. 更新后的配置文件会包含必要的设置,以便在启动 X 服务器时使用 NVIDIA 驱动程序。
  • 选择 “No” 意味着你将不会立即更新 X 配置文件。这可能是因为你想要手动编辑配置文件,或者你想要在不同的配置文件之间进行选择,或者你有其他特定的配置需求。
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

⑤ 提示Your X configuration file has been successfully updated表示安装成功。 选择 OK。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

14、安装CUDA驱动


./cuda_12.2.2_535.104.05_linux.run

① 输入 accpet 按回车。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

② 用空格键取消勾选 Driver ,因为前面已经完成显卡驱动安装,然后移动到 Install 进行安装。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

③ 返回安装成功,以及提示需要额外配置的环境变量

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

④ 按要求配置环境变量


# 添加系统全局变量
cat >> /etc/profile << 'EOF' 
export CUDA_HOME=/usr/local/cuda-12.2
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
export PATH=${CUDA_HOME}/bin:${PATH}
EOF
 
# 环境生效
source /etc/profile

 15、验证驱动及CUDA套件.


nvcc -V
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

nvidia-smi
ESXI 直通显卡,Centos7 安装 NVIDIA 驱动

16、最后进入应用内,检验显卡调用情况(这里我用的是 EMBY),显示已全部检测到显卡驱动。

ESXI 直通显卡,Centos7 安装 NVIDIA 驱动
声明: 本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
VMware vSphere

VMware vSphere 下 NVIDIA vGPU 驱动的安装和配置

2024-12-12 17:53:03

VMware vSphere

Esxi虚拟机启用了嵌套硬件辅助的虚拟化时,无法添加 PCI 直通设备。

2024-12-25 18:24:53

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索