ubuntu16.04 卸载nvidia驱动与cuda并升级驱动与cuda

环境

ubuntu16.04
GTX1650
内核:4.15.0-142-generic
老版本nvidia:430
老版本cuda:10.1

步骤

一、卸载原来的nvidia与cuda10.0

卸载nvidia

sudo apt-get remove --purge nvidia*

卸载cuda

sudo apt-get remove cuda
sudo apt autoremove
sudo apt-get remove cuda*

然后将终端运行目录切换到/usr/local/(这个是cuda的默认安装路径)下

cd /usr/local/
dir#应该会看到一个"cuda"或者“cuda-xxx”文件夹,再或者两者都有
sudo rm -r cuda-10.0

二、安装新的nvidia与cuda

不用额外装nvidia驱动!
不用额外装nvidia驱动!
不用额外装nvidia驱动!
通过下面的命令行方式装,超简单!!!
官网选择自己想要的版本,然后按照命令执行即可

https://developer.nvidia.com/cuda-11.1.1-download-archive
在这里插入图片描述

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-ubuntu1604.pin
sudo mv cuda-ubuntu1604.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda-repo-ubuntu1604-11-1-local_11.1.1-455.32.00-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1604-11-1-local_11.1.1-455.32.00-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu1604-11-1-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

三、遇到的问题

1.nvcc -V不显示问题
sudo gedit ~/.bashrc
加入如下内容:
export PATH=/usr/local/cuda-11.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH
2.执行nvidia-smi出现Failed to initialize NVIDIA NVML Driver/library version mismatch

原因分析: 内核驱动版本与系统驱动不一致
查看显卡驱动版本

cat /proc/driver/nvidia/version

输出版本为nvidia-430(即系统上一个版本的nvidia驱动)
[博客是在装好环境后写的,此处无图」

查看电脑现在所有驱动

sudo dpkg --list | grep nvidia-*

在这里插入图片描述

解决方案一:重启(对我无效)
重启后,卡在进入ubuntu系统时,ctrl+alt+F1进入命令行界面,卸载nvidia才能重新进入ubuntu系统

sudo apt-get remove --purge nvidia*

进入系统后重新安装nvidia455驱动,还是会报 mismatch错误

解决方案二:卸载原先加载的驱动(临时有效,电脑一重启,还是会有Driver/library version mismatch问题

# 卸载加载的nvidia驱动
sudo rmmod nvidia_drm
sudo rmmod nvidia_uvm
sudo rmmod nvidia_modeset
sudo rmmod nvidia
# 再执行nvidia-smi就好了

如果卸载某个mod的时候, 遇到错误, 比如
在这里插入图片描述
执行

sudo lsof /dev/nvidia*

在这里插入图片描述
载kill掉相关进程

sudo kill 37667
若有多个使用nvidia的进程,则kill后面加上相关的PID号

解决方案三:卸载现在版本的nvidia驱动,切换为使用cat /proc/driver/nvidia/version命令显示的版本(无用,因为要升级cuda,必须要升级nvidia驱动,如果对显卡驱动版本没要求,可以选择这条路)
解决方案四:卸载nvidia驱动,使用sudo ubuntu-drivers devices命令查看电脑支持的cuda
在这里插入图片描述
再使用命令ubuntu-drivers autoinstall自动安装显卡驱动
结论:无用,装完后还是会有同样的错误
解决方案五:执行完解决方案二的步骤后,多一句sudo apt-get upgrade命令(大功告成!!!)
但要慎用!!
中间有遇到两次选择安装包版本的,直接按照默认的来(按N)

Configuration file 'xxxx'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.

请添加图片描述

3. ata1.00 failed command:READ FPDMA QUEUD

进不去ubuntu系统,进入普通的ubuntu与recovery mode下的ubuntu系统都会输出这个错误,并且选择进入某系统的时间由10s改为了30s

ta2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: failed command: READ FPDMA QUEUED
ata2.00: cmd 60/28:70:28:19:89/00:00:6c:01:00/40 tag 14 ncq 20480 in

最后开始时按F2进入BIOS,将BIOS的所有设置改为默认(EXIT页面有个RESTORE选项),就可以顺利进入ubuntu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值