ubuntu18.04 内核自动更新导致驱动掉了

环境:
CPU:i5-8400@2.8GGHz*6–64 位
GPU:GeForce GTX 1060 6GB
推荐显卡驱动 430版本,因为配置深度学习环境,Tensoeflow ,pytorch ,GCC,等版本问题,而且因为初次安装驱动通过“软件更新“图形界面方式,的附加驱动安装,尝试命令行安装430 版本报错,无法定位,因为sudo apt install nvidia-driver-430 ,写成sudo apt install nvidia-430 ,或者旧版本驱动没有卸载干净。最后安装的是390 版本。
各种安装驱动方法:本人只尝试过两种简单的方式,一是图形界面(先添加源),二是通过命令行,自动安装推荐版本,或者选择指定版本。网上的第三种方式.run ,官网下载驱动,禁用 集显,关闭图形界面,自觉复杂,容易迁出其他很多不懂的问题和麻烦,暂时不敢尝试.

显卡驱动:nvidia-driver -390.116
配置Anaconda3.7,由于版本问题,回退至python3.6
安装好Anaconda之后,有一个默认base 虚拟环境
没有创建其他的虚拟环境,就在base环境中安装tensorflow和pytorch

conda 安装tensorflow1.12
conda install tensorflow-gpu==1.12.0
自动安装相应版本的cuda和cudnn,可以在安装过程中查看到安装的包名,完成后,查询到安装的版本是cuda9.1 和cudnn7.3

conda安装pytorch1.1.0
官网选择相应版本:https://pytorch.org/
我的是 :stable(1.1) +Linux+conda安装+python3.6+cuda9.0
相应安装命令:conda install pytorch torchvision cudatoolkit=9.0 -c pytorch
安装过程中可以看到也会自动下载调整安装匹配的cuda ,cudnn ,甚至调整tensorflow的版本??
这些具体过程我不是很清楚,只是记录了自己安装的过程,没有跟网上教程自己安装CUDA ,CUDNN,再安装tensorflow,pytorch,现在也不是很清楚为什么。如果有小伙伴愿意不吝赐教,可以留言私信!!

至于网上通常配置深度学习环境方式有时间再亲自实践一遍:安装cuda, cudnn 等环境
分别用tensorflow,pytorch,用GPU 跑了测试模型,都没有问题。

然后

一次重启,卡住很长时间无法进入界面,通过机箱重启按钮,再次重启才启动成功,然后就是800*600的屏幕分辨率,很卡,nvidia-smi,报错: NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

然后开始百度查了网上好多的教程和博客,有的说是bios需要设置安全权限,大多数人说重新安装一遍驱动程序就可以了。
重装驱动好多遍,分别通过软件更新图形界面,和命令安装,尝试安装了390,430 版本都是一样的报错,nvidia setting打开是空白。
之后查询到是因为ubutnu内核升级了,新版本内核和显卡驱动不匹配出现了上面的问题.

有博客称只需要在进行ubuntu启动引导的界面时,就是刚开始叫你选择操作系统的界面,选择“ubuntu高级选项”,选择上一个内核版本启动,就可以。
例如我的最新版本是4.18.0-20-generic版本,然后在进入GRUB 界面时选择上一个版本4.18.0-18-generic
启动后,再使用nvidia-smi命令看看
我觉得可以试一试,可能很简单的就解决了,如果没有其他问题的话。
但我还存在gcc b版本的问题,所以这个方式并没有解决我的问题
但不足之处每次开机启动都要手动选择,

通过设置默认内核启动版本

查看已安装内核
dpkg --get-selections |grep linux-image
或者
该命令显示内核的顺序,比如显示为:
grep menuentry /boot/grub/grub.cfg

查看当前正在使用的内核
uname -a或者 uname -r

1、打开grub配置文件
sudo gedit /etc/default/grub(或者vi,vim打开)

2.修改GRUB

默认为GRUB_DEFAULT=0
特定版本的内核
则将上述语句修改为:
GRUB_DEFAULT=“Advanced options for Ubuntu > Ubuntu, with Linux 4.18.0-18-generic”(注意是自己想要的内核版本)

GRUB_DEFAULT=“gnulinux-advanced-5b5cabf4-e78b-457c-b10f-b662ba4c57d9>gnulinux-4.18.0-18-generic-advanced-5b5cabf4-e78b-457c-b10f-b662ba4c57d9”

根据内核版本顺序填写对应数字

3.更新GRUB并重启
sudo update-grub
sudo reboot

4.uname -r 查看内核版本是否切换成功

我通过以上方式均仍然不能切换内核版本,我觉得有可能是WIN10+ubuntu18.04双系统的原因。

最后采用删除最新内核的方法

删除内核(注意不要删除当前系统正在使用的内核
sudo apt-get remove linux-image-xxx-xx-generic

sudo dpkg --purge linux-image-x.x.x-xx-generic

如需要升级内核安装新内核
sudo apt-get install linux-headers-x.x.x-x-generic linux-image-x.x.x-x-generic

阻止内核自动更新:(需要时间验证)
sudo apt-mark hold linux-image-generic linux-headers-generic

sudo apt-mark hold linux-image-x.xx.x-xx-generic
sudo apt-mark hold linux-image-extra-x.xx.x-xx-generic

解除阻止自动更新:
sudo apt-mark unhold linux-image-generic linux-headers-generic

sudo apt-mark unhold linux-image-x.xx.x-xx-generic
sudo apt-mark unhold linux-image-extra-x.xx.x-xx-generic

通过删除新内核,GRUB-DEDAULT=0 的方式切换到上一个版本4.18.0-18-generic。
再次安装驱动,仍然nvidia-smi,报错: NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

再次查询,偶然在评论区看到一个小伙伴有相同的问题,是因为GCC版本问题,想到之前因为配置深度学习环境,GCC,G++版本降到4.8.就去试一试切换到ubuntu的默认gcc版本之一7.3,再次重装驱动,成功了。
GCC,G++版本切换:https://blog.csdn.net/qq_43222384/article/details/90296328

思考;很多时候我们会采用重装方式解决问题,这是一个解决问题的思考方向,尝试还原,即逆向过程,把一些设置和做的改变还原去发现问题去代替真的重装(真的很费时间和耐心)。这次GCC版本问题体现了。

声明:主要作记录对抗遗忘,不敢保证所说所写都是正确的,各位读者伙伴必须经过自己思考,乐意交流。
参考:
https://blog.csdn.net/weixin_43064339/article/details/88370372
https://blog.csdn.net/cf_wu95/article/details/85984956

  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
升级Ubuntu 18.04系统的内核需要注意一些事项。首先,确保内核版本与NVIDIA驱动版本匹配,否则可能会导致驱动不兼容的问题。比如410版本的驱动无法在4.18以上的内核正常运行。 首先我系统初始为4.15版本内核的Ubuntu 18.04系统,这里我对内核做了一下升级。实际上不升级也完全没有问题,不影响后续操作。需要注意的地方在于内核版本与NVIDIA驱动版本应当匹配(比如410版本的驱动就无法在4.18以上的内核正常运行)。 原本使用Ubuntu 18.04.2 LTS来换到5.4.45的内核版本,来尝试在系统中直接用sudo apt-get install linux-image-…命令更新一下Linux的内核,但是碰到各种驱动不兼容的问题。网传的ubuntu更新内核的教程都有各种问题,例如我们这次会提到的,更新到4.17版本之后的内核,需要安装的软件包会多一个。这次自己来写一个教程记录一下。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Ubuntu 18.04 升级内核 配置GPU驱动+CUDA+CUDNN](https://blog.csdn.net/andyL_05/article/details/106974482)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Ubuntu 18.04 Linux内核升级(因为在系统中安装会出现各种驱动不兼容的问题,所以去官网下)](https://blog.csdn.net/qq_44930903/article/details/109183731)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值