当前位置:首页 > 技术 > 正文内容

Ubuntu系统下NVIDIA显卡驱动安装实战指南

访客 技术 2026年7月6日 1

1. 获取驱动安装包

首先访问NVIDIA官方驱动下载页面(https://www.nvidia.com/Download/index.aspx),根据你的显卡型号选择对应的操作系统和版本。例如,在表单中选择"Linux 64-bit"并指定具体GPU型号,点击"SEARCH"按钮。搜索结果出现后,点击"DOWNLOAD"即可获取.run格式的驱动文件。

2. 安装编译环境

执行以下命令安装必要的依赖库:

sudo apt update
sudo apt install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt install --no-install-recommends libboost-all-dev
sudo apt install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt install libgflags-dev libgoogle-glog-dev liblmdb-dev

如果安装过程中遇到错误,请先升级Python包管理工具:

sudo apt install python3-pip
sudo pip3 install --upgrade pip

然后重新执行上述依赖安装命令。

3. 禁用开源驱动

Ubuntu默认加载的nouveau开源驱动与NVIDIA闭源驱动冲突,需先禁用:

sudo bash -c "echo 'blacklist nouveau\noptions nouveau modeset=0' >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
sudo update-initramfs -u

重启系统后验证禁用结果:

lsmod | grep nouveau

如果没有输出任何内容,表示禁用成功。

4. 配置系统动态库路径

编辑~/.bashrc文件,在末尾添加以下内容:

echo 'export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

5. 移除现有驱动

确保系统没有残留的NVIDIA组件:

sudo apt --purge remove nvidia-*
sudo apt autoremove --purge

6. 进入字符终端模式

Ctrl+Alt+F3切换到纯文本界面(F1-F6均可用)。如果系统未安装LightDM显示管理器,先执行:

sudo apt install lightdm

安装后选择lightdm作为默认显示管理器。然后停止图形服务:

sudo service lightdm stop

7. 安装驱动程序

确保当前目录下存在下载的.run文件,赋予执行权限并安装:

sudo chmod +x NVIDIA-Linux-*.run
sudo sh NVIDIA-Linux-*.run --no-opengl-files --no-x-check --no-nouveau-check

安装过程中对交互提示的回答参考:

  • 遇到"pre-install script failed"警告:选择"Yes"继续;
  • DKMS注册询问:选择"No";
  • 32位兼容库:选择"No";
  • 自动更新X配置:选择"Yes"。

安装完成后,加载内核模块:

sudo modprobe nvidia

8. 验证安装结果

重启图形界面或直接重启系统:

sudo service lightdm start   # 返回图形界面
# 或者
sudo reboot

重启后运行以下命令确认驱动是否正常工作:

nvidia-smi

如果显示GPU型号、驱动版本及显存信息,则安装成功。

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。