linux 命令行下适配 nvidia 驱动

转自:https://www.cnblogs.com/chua-n/p/13208398.html

1. 下载相应驱动

在官网这里选择适应你 GPU 的驱动版本,在下载界面可用右键得到下载链接,然后在 linux 命令行下使用 wget 进行下载,如我下载的是 1080 Ti 的驱动版本:

wget https://www.nvidia.cn/content/DriverDownload-March2009/confirmation.php?url=/XFree86/Linux-x86_64/440.82/NVIDIA-Linux-x86_64-440.82.run&lang=cn&type=TITAN

下载完成后是一个名为NVIDIA-Linux-x86_64-440.82.run的文件。此时若使用sudo sh NVIDIA-Linux-x86_64-440.82.run进行安装,会产生如下报错:

You appear to be running an X server; please exit X before installing.

这主要是由于通常而言你的电脑上已经有 nvidia 驱动并且在运行了,此时无法进行新驱动的安装,因为会影响依赖你现有驱动的应用的正常运行。比方说你的桌面程序就需要依靠现有的显卡驱动进行显示。

回到这个报错,百度了解到是有一个叫做 X 的进程服务在依赖着 nvidia 驱动的运行,这个 X 进程似乎就是支撑你的图形桌面的服务。使用ps aux | grep X命令可查看到这个正在运行的服务:

$ ps aux | grep X root 1459 0.0 0.0 15984 928 pts/40 S+ 19:12 0:00 grep X root 1643 0.0 0.1 426836 187692 tty7 Ssl+ 10:43 0:15 /usr/lib/xorg/Xorg -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch root 3604 0.0 0.0 387052 71108 tty8 Ssl+ 10:44 0:22 /usr/lib/xorg/Xorg -core :1 -seat seat0 -auth /var/run/lightdm/root/:1 -nolisten tcp vt8 -novtswitch git 3909 0.0 0.0 43732 4264 ? Ss 10:44 0:03 dbus-daemon --fork --session --address=unix:abstract=/tmp/dbus-E2NLgH7XO1

2. 关闭 X 服务

为了能够安装新的 nvidia 驱动,我们需要关闭这个 X 服务,我的 Ubuntu 是基于 lightdm 类型的桌面系统,采用如下命令:

sudo /etc/init.d/lightdm stop sudo /etc/init.d/lightdm status

对于其他的 linux 版本,如果桌面系统是基于 gdm 类型,应该把命令中的 lightdm 改为 gdm 即可;非这两种桌面系统类型的,百度一下你的 linux 版本关闭 X 服务的相关命令吧。

关闭了 X 服务后图形桌面可能会关闭,因为我是通过 ssh 连接的服务器进行的操作,所以也没有看到具体的变化,不确定具体会发生什么情况,不过别慌就是了。

关闭 X 后,可再次用 ps 命令查看相关进程以确认,我这里显示如下,确实没有运行的 X 服务了:

$ ps aux | grep X root 1656 0.0 0.0 15984 1084 pts/40 S+ 19:15 0:00 grep X

3. 卸载旧的驱动

终于可以卸载旧驱动了:

sudo apt-get --purge remove nvidia-* # 也有的说用下面的命令进行卸载,我个人均有尝试,无碍 sudo apt-get --purge remove "*nvidia*"

4. 安装新驱动

在第 1 步下载的驱动文件目录里运行安装包即可:

$ sudo sh NVIDIA-Linux-x86_64-440.82.run

值得一提的是,中间可能会有一些小的 warning 提示(好像还有一个 error?),但流程走下来最终还是提示 successfully complete,这就中了!使用nvidia-smi已经可以看到你的新驱动版本号(Driver Version)产生了变化:

$ nvidia-smi Sun Jun 21 19:16:54 2020 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 440.82 Driver Version: 440.82 CUDA Version: 10.2 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GTX 108... Off | 00000000:02:00.0 Off | N/A | | 27% 35C P5 24W / 250W | 0MiB / 11170MiB | 2% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+

linux 命令行下适配 nvidia 驱动 - 搬运的更多相关文章

  1. 详解Linux命令行下常用svn命令

    1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

  2. 在linux命令行下执行php 程序

    如何在linux命令行下,执行php程序. 例子 打印当前时间 php -r "echo time()" 随机输出一个数字 php -r "echo rand(1,20) ...

  3. Linux命令行下cp,rm,mv命令的使用

    以下的内容来源于<鸟哥的私房菜> Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件 ...

  4. linux命令行下svn常用命令

    linux命令行下svn常用命令 1. 将文件checkout到本地目录 1 #path是服务器上的目录 2 svn checkout path 3 4 #示例 5 svn checkout svn: ...

  5. Linux命令行下如何终止当前程序

    Linux命令行下如何终止当前程序 快捷键: Ctrl+c 在命令行下起着终止当前执行程序的作用, Ctrl+d 相当于exit命令,退出当前shell Ctrl+s 挂起当前shell(保护作用很明 ...

  6. Linux命令行下的vim文本编辑器

    Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...

  7. Linux命令行下常用svn命令

    1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

  8. Linux 命令行下搜索工具大盘点,效率提高不止一倍!

    在 Linux 命令行下进行文本关键字的搜索,大家肯定第一时间会想到 grep 命令.grep 命令确实十分强大,但如果需要用到它更加灵活的功能时,可能命令就会显得十分复杂. 于是,为了简化 grep ...

  9. 在Linux命令行下令人惊叹的惊叹号(!)

    '!'符号在Linux中不但可以用作否定符号,还可以用来从历史命令记录中取出命令或不加修改的执行之前运行的命令.下面的所有命令都已经在Bash Shell中经过确切地检验.尽管我没有试过,但大多都不能 ...

  10. QrenCode : linux命令行下生成二维码图片

    原文链接:http://wowubuntu.com/qrencode.html # 作者:riku/ / 本文采用CC BY-NC-SA 2.5协议授权,转载请注明本文链接. 对于二维码大家应该并不陌 ...

随机推荐

  1. JS学习-Canvas

    Canvas Canvas API 提供了一个通过JavaScript 和 HTML的<canvas>元素来绘制图形的方式.它可以用于动画.游戏画面.数据可视化.图片编辑以及实时视频处理等 ...

  2. rdlc 中文在win10中显示异常,在非win10中显示正常

    RDLC中的默认字体Arial. 在win10中,RDLC为Arial时,显示中文会异常,这个时候,只需要将Font修改为中文字体就可以了,例如修改为宋体.

  3. QLineEdit CSS样式

    QLineEdit{ border:1px groove gray; border-radius:18px; padding:2px 4px } QLineEdit:!hover { border-s ...

  4. 【2020NOI.AC省选模拟#2】A. 旋转

    题目链接 原题解: 把每个点的坐标视为复数,那么每次询问就是区间求平均数(先求和然后除以个数).一个点绕着原点旋转就是乘以$(\cos 60^\circ +i\sin 60^\circ)$. 一个点绕 ...

  5. Study python_03

    函数 基本思想---函数是用来重复使用的 def shili(input_): print("我了个去 %s"%input_) shili('你竟然') 当一个函数中即有默认参数, ...

  6. Win10系统删除文件需提供管理员权限-- 解决方案

    解决方案1:选中[文件]-[属性]-[安全]-[高级]-选中当前用户[编辑]权限 若还是不行,则试试方案2解决方案2:更改[所有者]--[高级]--[立即查找] 选中[everyone]--[确定] ...

  7. .netcore 跨域问题

    CORS(跨域资源共享)是一种W3C标准,允许服务器放宽同源策略.使用CORS,服务器可以在显式允许某些跨域请求时拒绝其他跨域请求.CORS是相比其他跨域技术(比如JSONP)更安全.更灵活. ASP ...

  8. 解决idea中按退格键(Backspace)回到上一行问题

    开始学习java时,第一次用idea,该问题困扰一上午,网上也没有解决方案,最后自己摸索如下.打开File-> Settings->Editor->Smart Keys,将To pr ...

  9. 【loguru】Python简单的日志管理模块

    简介 在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息. 在 Python 中用到日志记录,那就不可避免地会用到内置的 logg ...

  10. CentOS7/6 关闭防火墙(转载)

    CentOS6关闭防火墙使用以下命令, //临时关闭 service iptables stop //禁止开机启动 chkconfig iptables off CentOS7中若使用同样的命令会报错 ...