6.2 NVIDIA 显卡驱动配置

NVIDIA 显卡驱动概述

对于台式机,若 CPU 是英特尔处理器,且型号以 F(如 i5-9400Farrow-up-right )或 KF(如 i5-12600KFarrow-up-right )结尾,则该型号没有核芯显卡,无需处理核芯显卡相关配置。

若已拥有独立显卡,且视频输出接口(DP 或 HDMI)直接连接至独立显卡,则通常无需对核芯显卡进行任何配置,仅需处理独立显卡本身的驱动即可。

对于不具备显卡直通能力的笔记本设备,必须先按照其他章节内容安装配置英特尔核芯显卡驱动(相关 DRM 模块),再参照下文进行配置。

加入 video 组

将指定用户添加到 video 组,以便访问显卡设备:

# pw groupmod video -m 你的用户名

安装显卡驱动

使用 pkg 安装:

# pkg install nvidia-drm-kmod nvidia-settings

或使用 Ports 安装:

# cd /usr/ports/graphics/nvidia-drm-kmod/ && make install clean
# cd /usr/ports/x11/nvidia-settings/ && make install clean

列出已安装的 NVIDIA 相关软件:

# pkg info -q | grep -i nvidia

配置 NVIDIA 显卡驱动

启动 NVIDIA 相关内核模块

警告

请勿尝试加载 nvidia-drm.ko 内核模块,该操作可能导致系统崩溃。

生成 X11 配置文件

需注意的是,若系统可正常显示,则无需执行本节内容。

警告

不要试图安装和使用 Port x11/nvidia-xconfig。该工具当前不适用,可能导致系统无响应。

硬件加速和解码器

安装 VDPAU 驱动及相关库以支持视频硬件加速。

  • 使用 pkg 安装:

  • 或使用 Ports 安装:

重新启动后即可正常使用 NVIDIA 驱动。

查看 NVIDIA 驱动状态

  • 列出所有 NVIDIA GPU 及其详细信息:

nvidia-smi 示例输出:

  • 查看 KDE 系统信息:

KDE 系统信息
  • 使用 MPV 打开电影,可见显存使用量明显上升(从 3 MB 上升至数百兆),也可使用 SMPlayer 观看。

MPV 显存使用

参考文献

故障排除

nvidia-smi 命令报错“mismatch”

nvidia-smi 报错

执行 nvidia-smi 命令时出现错误提示“API mismatch”等字样。该错误表示 API 不匹配,问题通常源于版本兼容性问题,可能存在以下几种情况:NVIDIA 驱动组件本身版本不匹配、NVIDIA 驱动与其他 NVIDIA 软件包版本不匹配、NVIDIA 驱动与当前 FreeBSD 基本系统版本不匹配。

建议先卸载所有 NVIDIA 软件包,随后将 FreeBSD 基本系统更新到最新版本,再重新执行驱动安装流程。

如何卸载现有的 NVIDIA 相关软件包

若提示版本不符,需先卸载所有已安装的 NVIDIA 相关软件包,然后按本文进行配置:

如何阻止驱动更新

pkg info -q | grep -i nvidia 输出的相关软件包逐个使用 pkg lock 命令锁定即可。

例如:

但若运行 freebsd-update 命令,或执行 pkgbase 对系统打补丁或更新补丁,也可能影响驱动。

因此需要读者自行平衡安全需求与日常使用。

课后习题

  1. 查找 nvidia-drm-kmod 的 Port 构建过程,分析其与内核版本的绑定机制,尝试在不同 FreeBSD 版本间迁移并验证兼容性。

  2. 选取 NVIDIA 驱动的模块加载机制,重构最小化加载流程。

  3. 修改 nvidia-smi 的访问权限或配置,验证其信息披露范围变化。

最后更新于