debian/ubuntu安装nvidia驱动
一、禁用nouveau驱动
nouveau是linux上的开源显卡驱动,在安装nvidia驱动之前,应当先禁用以避免冲突。如果不禁用,执行安装时,nvidia的安装程序也会提示潜在冲突问题问询问是否继续。
可使用以下命令查看nouveau模块是否加载。
lsmod | grep nouveau
如果现在nouveau模块正在运行,可按如下步骤添加配置文件并重启以禁用。
- 在 /etc/modprob.d/ 目录中添加 .conf 结尾的配置文件
- 添加以下内容
blacklist nouveau
options nouveau modeset=0
二、安装nvidia显卡驱动
2.1 方式一:从nvidia官网下载安装程序安装
- 从 nvidia官网 下载驱动程序
- 安装 gcc、g++、make库
- 执行 下载的
sudo ./NVIDIA-xxx.run
程序 - 安装过程中选择已有 MOK 或新生成一个 MOK(新生成的需要注册)
- 重启
- 执行 nvidia-smi 验证安装状态
其他:
- 对于特定型号比如A800显卡,nvidia官网提供的有针对特定系统的驱动比如ubuntu特定版本,此类安装程序可能是 .deb 格式,此类安装包使用 dpkg 或者 apt 进行安装即可。
- 上述安装包使用 apt 安装的时候,可执行
sudo apt install -f xxx.deb
以自动解决依赖关系。 - ubuntu 执行 nvidia-smi 如果提示命令不存在可安装 nvidia-utils-sso-server 以解决。
- ubuntu 桌面版可在以下路径确认显卡驱动安装状态:桌面右键、Display Setting、System、about、System Details、Graphics
2.2 方式二:从apt源安装
debian官方文档:NVIDIA Proprietary Driver
- 执行 nvidia-detect 检测适用的驱动名称
- 使用 apt 安装适用的驱动
- 重启
- 执行 nvidia-smi 验证安装状态
三、MOK的注册和使用
3.1 MOK的注册
# 1. 导入证书到板载db,证书位置根据实际情况确定,可在重启前添加多个证书
sudo mokutil --import /var/lib/dkms/mok.pub
#(此处会让输入一次性密码,此处密码可自定义,MOK管理器会在重启时让再次输入此密码以确认该key是由人类导入。)
# 2. 确认导入的证书已经被正确识别
sudo mokutil --list-new
# 3. 重启(会进入MOK管理器)
# 4. 选择enroll MOK、continue、confirm、[输入一次性密码]、reboot
3.2 MOK的撤销
# 1. 新证书注册后重启,如果输入的密码不对,或者选择跳过,该证书不会被导入到MOK数据库
# 2. 新证书注册后重启前,可执行下面的命令撤销
sudo mokutil --revoke-import
# 3. 已注册的证书可先查询确认要撤销的证书,然后执行撤销
sudo mokutil --export # 导出所有已注册的证书到当前目录
sudo mokutil --delete certname.der # 删除指定证书(此处如果不用sudo,则需要提供注册时的一次性密码以确认)
# 4. 一次性删除所有key
sudo mokutil --reset
3.3 其他
# 查看系统中已经加载的证书
sudo dmesg | grep cert
四、安装 CUDA
sudo apt install nvidia-cuda-dev nvidia-cuda-toolkit
五、卸载nvidia
5.1 卸载apt安装的nvidia驱动
# 1. 删除所有包含nvidia字样的包
sudo apt purge *nvidia*
# 2. 重启
# 3. 如果还有问题则执行
sudo apt install --reinstall xserver-xorg-core xserver-xorg-video-nouveau
# 或
X -configure
5.2 卸载xxx.run安装的nvidia驱动
sudo ./xxx.run --uninstall
有了计划记得推动,不要原地踏步。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)