若NVIDIA显卡在Linux中图形异常、GPU无法识别或nvidia-smi报错,需根据发行版选择对应安装方法:一、用系统驱动管理器(Ubuntu/Deepin等);二、APT源安装(Debian/Ubuntu系);三、.run包手动安装(通用但需禁用nouveau);四、pacman安装(Arch系);五、离线.run安装(CentOS/RHEL/Tencent Linux)。

如果您在Linux系统中使用NVIDIA显卡,但图形界面异常、GPU无法识别或nvidia-smi命令报错,则很可能是官方驱动未正确安装或与系统存在冲突。以下是多种可行的安装方法,适用于Ubuntu、Debian、Deepin、Kali、CentOS/Tencent Linux及Arch系等主流发行版:
一、使用系统自带驱动管理工具安装
该方法适用于Ubuntu、Linux Mint、Deepin等提供图形化驱动管理器的发行版,无需手动编译或禁用nouveau,操作最简且兼容性高。
1、打开“软件和更新”或“附加驱动”设置界面(Deepin用户可在控制中心搜索“显卡驱动”)。
2、切换至“附加驱动”选项卡,系统将自动检测已安装的NVIDIA驱动及可用的专有驱动版本。
3、勾选标有“专有”和“经测试”的推荐驱动条目(如nvidia-driver-535或nvidia-driver-470)。
4、点击“应用更改”,等待下载与安装完成。
5、安装结束后,必须重启系统使新驱动生效。
二、通过APT源安装官方闭源驱动
该方法适用于基于Debian/Ubuntu的系统,利用官方PPA或发行版仓库安装预编译驱动包,避免手动构建内核模块的风险。
1、更新软件包索引:sudo apt update。
2、添加NVIDIA官方图形驱动PPA(可选,用于获取较新版本):sudo add-apt-repository ppa:graphics-drivers/ppa。
3、再次执行sudo apt update同步新源。
4、安装指定版本驱动(例如535):sudo apt install nvidia-driver-535。
5、安装完成后,执行sudo reboot重启系统。
三、运行.run安装包手动安装
该方法适用于所有Linux发行版,尤其适合需精确匹配CUDA版本、或系统未收录对应驱动包的场景;但要求提前禁用nouveau并关闭图形界面。
1、前往NVIDIA官网驱动下载页,根据显卡型号与系统架构选择对应.run文件(如NVIDIA-Linux-x86_64-535.129.03.run)。
2、下载后赋予执行权限:chmod +x NVIDIA-Linux-x86_64-*.run。
3、禁用nouveau:编辑/etc/modprobe.d/blacklist-nouveau.conf,写入以下两行:
blacklist nouveau
options nouveau modeset=0
4、更新initramfs并重启:sudo update-initramfs -u && sudo reboot。
5、重启后进入TTY终端(Ctrl+Alt+F2),停止显示管理器:sudo systemctl stop gdm3(Ubuntu)或sudo service lightdm stop(Deepin)。
6、执行安装命令:sudo ./NVIDIA-Linux-x86_64-*.run --no-opengl-files --no-x-check --no-nouveau-check。
7、安装过程中,当提示是否安装NVIDIA 32-bit compatibility libraries时,按需选择;当提示是否运行nvidia-xconfig时,选择是。
四、Arch系(Arch Linux / Manjaro)使用pacman安装
该方法利用Arch官方仓库与AUR生态,通过包管理器统一维护驱动与内核模块,升级便捷且与系统深度集成。
1、启用multilib仓库:编辑/etc/pacman.conf,取消[multilib]段落前的注释符号#。
2、同步软件源:sudo pacman -Syu。
3、安装NVIDIA驱动及配套工具:sudo pacman -S nvidia nvidia-utils lib32-nvidia-utils。
4、若为笔记本双显卡(Intel+NVIDIA),还需安装优化切换工具:yay -S optimus-manager(需先配置AUR助手)。
5、安装完成后,重启系统并验证:nvidia-smi应正常输出GPU信息。
五、CentOS/RHEL/Tencent Linux(Tlinux)离线安装
该方法适用于无外网环境或企业级封闭系统,依赖本地上传的.run包与内核开发包,需手动处理签名与模块加载。
1、安装必要编译依赖:sudo yum install gcc kernel-devel kernel-headers make(CentOS 7)或sudo dnf install gcc kernel-devel kernel-headers make(RHEL 8+)。
2、确认内核版本与开发包严格一致:uname -r与rpm -q kernel-devel输出应完全匹配。
3、卸载旧驱动(如有):sudo /usr/bin/nvidia-uninstall或运行原.run包加--uninstall参数。
4、关闭图形界面:sudo systemctl set-default multi-user.target && sudo reboot。
5、重启后执行安装:sudo sh NVIDIA-Linux-x86_64-*.run --no-opengl-files --disable-nouveau。
6、安装完毕后恢复图形目标:sudo systemctl set-default graphical.target,再重启。










