运维系列&AI系列&Lenovo-G双系统系列(前传-装之前搜索的):NVIDIA驱动安装+nvidia-smi各种报错+ubuntu黑屏+问(NVIDIA-SMI has failed becaus

NVIDIA驱动安装+nvidia-smi各种报错+ubuntu黑屏+问(NVIDIA-SMI has failed because it couldn‘t communicate .... )




NVIDIA驱动安装+nvidia-smi各种报错+ubuntu黑屏+问(NVIDIA-SMI has failed because it couldn‘t communicate … )

普通的NVIDIA驱动安装按理说比较简单,但偶尔会遇到各种奇怪的错误,之前安装时也黑屏过,最后也补救回来,这次狠下心来,把全部遇到的问题阅读的经验贴记录一下。

NVIDIA驱动的三种安装方式:

方法一:附加驱动安装方法(也是最简单的安装方法,但有时安装后不起作用)

(1)先更新软件源
sudo apt-get update
sudo apt-get upgrade
(2)在软件与更新中菜单栏选择附加驱动,会进行自动搜索,选择一个版本的专有驱动,点击应用更改,更改后重启即可。

在这里插入图片描述

(3)重启后执行nvidia-smi有如下显示则为成功:

在这里插入图片描述

方法二:英伟达官方安装,命令行安装

在官网上(官方高级驱动搜索 | NVIDIA)寻找和自己显卡匹配的驱动文件。输入自己显卡的类型,找到合适的驱动。

在这里插入图片描述

在这里插入图片描述

下载后会得到一个后缀为.run类型的可执行文件。
(1)先禁用nouveau驱动
sudo gedit /etc/modprobe.d/blacklist.conf
(2) 在最后一行添加
blacklist nouveau
options nouveau modeset=0 #禁用nouveau第三方驱动
(3)卸载原有的驱动(没有可以跳过)
sudo apt-get remove --purge nvidia*
sudo apt autoremove
(4)重启(分辨率可能不清晰,如果黑屏请看下面问题解决)
update-initramfs -u 更新内核

我看网上总结的经验贴是更新内核,我感觉如果没更新,安装完驱动后,系统自动更新会导致不匹配出现报错

reboot

lsmod | grep nouveau 禁用nouveau驱动看有没有输出,没有输出则为成功

(5)安装驱动

然后在命令行界面下输入:

sudo service lightdm stop  #这个是关闭图形界面,不执行会出错。

给.run文件赋予权限并安装

sudo chmod  a+x NVIDIA-Linux-x86_64-418.56.run
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-x-check -no-nouveau-check -no-opengl-files 
#只有禁用opengl这样安装才不会出现循环登陆的问题
(6) 打开图形界面,在命令行输入
sudo service lightdm start      #这个是打开图形界面

检查驱动是否安装成功:

nvidia-smi

参考1:Ubuntu 16.04 Nvidia驱动安装(run方式)

参考2:http://t.csdn.cn/jP4FY

参考3:http://t.csdn.cn/mFROY

方法三:在命令行中安装系统推荐的驱动

ubuntu-drivers devices

在这里插入图片描述
然后安装一个系统推荐(recommended)的驱动

sudo apt install nvidia-driver-530

最后重启,正常顺利的话nvidia-smi会有显示,但有时候还是出现报错问题。

安装NVIDIA驱动后可能的问题

一、出现黑屏现象如何解决(因为每个人的问题不一样,有的只是驱动问题,有的是内核版本问题)

情况一:

有时安装驱动重启电脑时候会直接黑屏(有光标),这里不要急,先按住Ctr+Alt+F3(有的是F1,至于F几都试一下吧,有的电脑不一样),然后就进入tty3这个命令行管理界面。下面这个图我嫖别人的,我们之后输入用户名,和登录密码。

在这里插入图片描述

whoami #查ubuntu系统用户名

接着我们在命令行输入下面命令,有的ubuntu版本gdm3,有的是lightdm,至于是哪一个可以查看cat /etc/X11/default-display-manager

sudo systemctl restart gdm3  重启管理显示器
情况二:

开机后自动显示grub选项,提示要选择哪个操作系统的时候,默认选择光标是在第一行Ubuntu上的(整个第一行为白色),按E键(edit的意思)进入编辑该引导选项的界面,可以看到,中下部分有一处写着“ro“:

在这里插入图片描述

此时,你需要改写:把”ro“改成”rw“,即”read & write“,可以读取并且可以写入,同时为了排除独立显卡的影响因素也在splash后面加上了nomodeset,然后按F10或者ctrl+x重启。再然后输入命令sudo update-grub
此时发现你已经成功进入图形界面了。但是,这种方法,可能只是一次性的,等你再次重启之后,又是老样子。
此时,你需要修改/etc/default/grub ,你需要将grub文件中的:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"  #这里添加 nomodeset
GRUB_CMDLINE_LINUX="rw"  #这里需要填写为rw

修改完之后,还需要最后一步。输入命令sudo update-grub

参考链接:Ubuntu Linux开机黑屏的永久解决办法

情况三:

例如老哥的这种情况,重启后完全没有光标(我之前也遇到过花了1伯大洋上淘宝解决的):ubuntu开机黑屏

(1)尝试可正常启动的系统内核在机器启动时进入grub模式

启动后,在有读条进度的时候按住左shift键即可进入,注意一定要赶在启动一开始时,进入后看到一堆选项。

选择启动内核

选择第二项Advanced options for Ubuntu。然后按照版本从高到低尝试启动,直至可进入图形界面。

在这里插入图片描述

(2)卸载不需要的内核
查看现有系统内核
dpkg --get-selections | grep linux-image

在这里插入图片描述
执行以下命令卸载:根据自己的情况卸载

sudo apt-get remove --purge linux-image-6.2.1-25-custom 

然后自动删除相关包

sudo apt autoremove

然后再查看内核的时候高版本的内核deinstall。 至此大功告成!其实按理说你每次进ubuntu的时候在grub界面选择旧的内核也行,就是麻烦一些。

参考链接:Ubuntu apt upgrade后黑屏问题

二、nvidia驱动安装上了,但是nvidia-smi显示报错,NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver

这里我总结了网上好多种思路:

方法一:

查找已安装的驱动版本,xxx为版本号,如下所示说明驱动是已经按上的,但是不能用:

ls /usr/src | grep nvidia 

在这里插入图片描述

接下来我们安装dkmsdkms全称是DynamicKernel ModuleSupport,它可以帮我们维护内核外的驱动程序,在内核版本变动之后可以自动重新生成新的模块 。

sudo apt-get install dkms
sudo dkms install -m nvidia -v xxx
nvidia-smi
如果此时nvidia成功显示,恭喜成功过。但大多数问题没有得到解决,执行 sudo dkms install -m nvidia -v xxx 时报错。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1.如果 sudo dkms install -m nvidia -v xxx报错可能是gcc版本过低(尽量大于7.3),我们需要升级gcc版本。查看gcc版本:
gcc -v

gcc/usr/bin 目录下,输入命令查看所有版本的gcc

ls /usr/bin/gcc*
ls /usr/bin/g++*

在这里插入图片描述

将查到的版本加入gcc候选中,最后的数字是优先级,如下:

> sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
> sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50
> sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
> sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 50

完成上面的操作之后,我们就可以通过下面的指令来选择不同的gccg++的版本

sudo update-alternatives --config gcc

在这里插入图片描述

更换后,如果nvidia-smi成功了,恭喜。但有可能不是gcc问题,就比如我下面这种报错。和内核有关。

在这里插入图片描述

参考:https://blog.csdn.net/weixin_54626591/article/details/141816378

参考:https://blog.csdn.net/weixin_54626591/article/details/141827390

方法二:

确认是否电脑更新了内核版本,我看其他博客说这是因为你驱动安装后,更新了内核版本出现的问题:

sudo dpkg --get-selections | grep linux-image  #查看已安装版本
uname -sr   #查看当前使用版本

在这里插入图片描述

重启电脑,在系统选择页面选择“ubuntu高级选项”,选择老版本进入。
成功了,nvidia-smi有显示。但是屏幕亮度是最亮的改变不了。

底下评论

问题一

大佬求问NVIDIA-SMI命令一打开就闪退要怎么办







Stu.xian

NVIDIA驱动安装+nvidia-smi各种报错+ubuntu黑屏+问(NVIDIA-SMI has failed because it couldn‘t communicate … )

posted @ 2024-09-03 11:10  坦笑&&life  阅读(3)  评论(0编辑  收藏  举报  来源