ubuntu18安装nvidia驱动的踩坑记录(最后成功安装)

提醒:本文中的所有指令都不一定是对的,如果有需要的朋友建议查找一下正确的命令是什么。

           只是给自己看的一个日记,如果能帮助到别人更好了

背景:

        我手里有一台工控机:ubuntu18+2080super;一台PC:ubuntu18+960M。想跑跑下tf下语义分割的模型,在工控机下配置环境(工控机环境基本是全新的)。因为之前弄过nvidia驱动+cuda+cudnn的配置,印象中驱动是最好装的,但是这次出现了很多问题:

踩坑1:

        按照很多网上教程,禁用nouveau,下载驱动的.run文件,关闭图形界面,然后运行...

结果1:

        重启后电脑紫屏、黑屏,卡在登录界面,后续也查找了解决办法但是都不适用,甚至最开始重装了电脑才重新开机。

解决1:(避免重装电脑,而不是装好驱动)

        开机按F2,ESC进入到ubuntu高级选项(其他电脑的进入方式可能不同,双系统应该会让用户选择),进入到recovery模式,root里面直接卸载nvidia,具体的命令我用的是:

sudo apt-get nvidia-uninstall

        有的教程里是(具体是什么我不记得了,建议自己查一下):

sudo apt-get purge --nvidia*

踩坑2:

        某些Nvidia驱动的安装教程里会说,直接链接一个PPA的库,然后用“sudo apt-get install nvidia-driver-xxx(版本号)”之类的命令

就可以安装

结果2:

        黑屏,开机卡死...

解决2:同上。

踩坑3(这个过程没完整的走过,这里灰掉)

        和2的过程类似,用“sudo ubuntu-drivers autoinstall”(命令不一定对,总之是一个autoinstall的命令)

结果3:

        网卡不见啦,由于我的工控机不方便插网线,加上当时心态有些崩,直接就pass了这个安装方案。

解决3:

        应该有离线安装网卡的办法,具体需要自己查自己试。

踩坑4:

        用系统自带的“软件与更新”,有驱动检查,直接在那里面安装驱动,差不多等待30min。

结果4:同1,2,开机卡死,黑屏。

解决4:同1,卸载+重启。

其他尝试:

        因为工控机要到实验室用,不方便,有一天我就在自己的双系统PC上按照教程装机了一遍,方法和踩坑1中提到的差不多。

1.进入到blacklist.conf中禁用nouveau,重启;

2.下载好的驱动文件(我用的是当时最新的525.11.60版本),sudo chmod a+x;

3.进入到telinit3(还是什么ctrl+atl+f3之类的),一个文本界面

     当时第一次进到这里,输入账户密码后,再输入命令后有四个白点,后来我才知道应该是中文版的乱码,就是让你输入密码的意思(疑惑了好久,属实笨比了)

4.这里出现了不同:因为当时没搞懂文本界面的使用方法,在里面一通操作“sudo service lightdm stop”之类的命令(去教程里基本都能查到),没有什么结果,我就退回到了图形界面(ctrl+alt+f1),直接在终端里操作,依然是按照教程进行,结果居然就装上了,输入nvidia-smi有了输出,然后也顺利装上了cuda和cudnn,太诡异了!

        事后我就把同样的方法在工控机上尝试一遍,但是依然失败!思考一下,我以为是驱动版本,显卡版本以及ubuntu版本的对应问题,首先PC上的老显卡装最新的驱动成功了,那么应该和驱动没关,考虑到2080s显卡是19年后才出的,以为会不会和18版本的ubuntu冲突,周末把Ubuntu升级成了20,还是失败,依然是开机黑屏。

失败的总结:

        基本遇到的情况都是安装过程是正常的,和网上的教程都一样,但是重启后无法开机,查询后看到网上也有很多人有同样的情况,也不知道每个人具体怎么解决的,但是在我试过的方法都没用。有很多教程里提到,安装的指令后面要加上“-no-opengl-files”,不然会开进进去死循环,对我来说也不好使。

成功的方法:

        断断续续搞了一周的环境还是没成,在我周末吃饭的时候看了个tensorflow的教学视频(此时我已经想在自己的960M上跑,或者给工控机装个windows),好奇之下看了下人家说的环境需求,视频提到tensorflow用anaconda安装,都不需要nvidia驱动,直接装个cuda就行

        周一来工控机上试试(gcc的原因我又给系统降回到ubuntu18),直接装cuda11.0,过程中有一步问你是否需要装驱动,check上(同样要禁用nouveau,不然会报错),我下载的cuda11对应的450的驱动,安装cuda后配置环境变量,reboot,输入nvidia-smi居然成功输出了!

你可能感兴趣的:(ubuntu)