【Ubuntu】16.04服务器:驱动更新+cuda11+cudnn

引言

笔者学校服务器的系统是Ubuntu 16.04 ,显卡GeForce RTX 2080Ti。
想将cuda升级到11.3,以及一系列的cudnn+驱动的升级

1. 驱动升级

查看Ubuntu的显卡版本

lspci | grep -i vga

只返回了16进制码,查询地址:http://pci-ids.ucw.cz/mods/PC/10de/2204
在这里插入图片描述

官网地址:https://www.nvidia.cn/geforce/drivers/

1.1 找到合适自己的版本
打开上述官网地址,按键盘上的F12,点击Console或者控制台在这里插入图片描述
然后在下方小箭头处 ,粘贴下面的代码后(可以查看最新往前200个旧版本),按回车

SystemScanner.prototype.DriverSearch = function(psid, pfid, osID, langCode, whql, beta, dltype, numresults ) {numresults=200;this.scannerStatusUpdate(GFE_SERVER_CONNECTING);theScanner.scannedDevice.downloadInfo=new Object();var parameters='psid='+psid;parameters+='&pfid='+pfid;parameters+='&osID='+osID;parameters+='&languageCode='+langCode;parameters+='&beta='+beta;parameters+='&isWHQL='+whql;parameters+="&dltype="+dltype;parameters+="&sort1=0";parameters+="&numberOfResults="+numresults;var requestUrl=this.driverManualLookupUrl+parameters;this.driversLogUIEvent("warn","SUID:"+this.tracker.scanID+" BEGIN DriverSearch requestUrl:"+requestUrl);this.debugTrace(requestUrl);jQuery.ajax({url:requestUrl,async:false,type:'get',success:function(response){try{theScanner.debugTrace("The Driver Lookup Service Returned:\n\n("+response+")");if(response.length>0){theScanner.resetResults();var driverLookupJsonObj='('+response+')';theScanner.resultsList=new Object();theScanner.resultsList=eval(driverLookupJsonObj)}if(theScanner.resultsList.Success==0){theScanner.scannerStatus="No driver available"}else{theScanner.scannerStatus="Results Ready"}}catch(e){this.driversLogUIEvent("error"," FAIL catch DriverSearch");theScanner.resetResults();theScanner.scannerStatus="No driver available"}},error:function(response){theScanner.resetResults();theScanner.scannerStatus="AJAX Call failed"}});this.driversLogUIEvent("warn","SUID:"+this.tracker.scanID+" END DriverSearch requestUrl:"+requestUrl);}

在这里插入图片描述
此时,可以看到更多旧版本的驱动,根据想要安装的CUDA的版本选择驱动的版本,不要太新了
在这里插入图片描述
版本对应
在这里插入图片描述
1.2 找到对应的版本,下载安装包:
如果和笔者需要的版本一致的这里附上下载链接
在这里插入图片描述
链接:https://pan.baidu.com/s/1yStk0RVw0PLW7jmqqSkPbQ
提取码:b2c4
可以看到选定版本支持服务器的配置
在这里插入图片描述

接下来就开始在服务器上安装驱动

1.3 卸载现有驱动,重新安装

sudo apt-get --purge remove nvidia-*
sudo apt-get purge nvidia*
sudo apt-get purge libnvidia*

直到下面的命令不输出任何内容,则卸载成功

sudo dpkg --list | grep nvidia-*

若仍然有输出,且输出中包含“rc”则说明‘被移除/卸载,但它的配置文件仍然存在’,终端输入如下命令,#清理dpkg的列表中有“rc”状态的软件包

sudo dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
#  再次输入
sudo dpkg --list | grep nvidia-*

不再输出任何信息,接下来执行安装命令

# 进入安装包文件夹
sudo bash NVIDIA-Linux-x86_64-470.57.02.run -no-opengl-files -no-x-check

其中添加-no-opengl-files -no-x-check是为了解决如下问题
在这里插入图片描述
网上找了很多方法,比如禁用指令sudo service lightdm stop,安装后在启用sudo service lightdm start,都未能解决上述问题。所以可以直接尝试上述的方法。

接下来开始继续安装(笔者只留下部分截图,没有截图的用文字描述):

  • 1.The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续
  • 2.Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续
  • 3.Nvidia’s 32-bit compatibility libraries? 选择 No 继续

在这里插入图片描述

  • Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择Yes 继续

在这里插入图片描述
安装完毕,在终端输入指令显示如下

nvidia-smi

在这里插入图片描述

2. CUDA升级

官网地址:https://developer.nvidia.com/cuda-downloads

目前官网已经升级到cuda11.4,但是没有Ubuntu16.04的系统,因此找到之前发布的版本:
在这里插入图片描述
选择匹配的版本
在这里插入图片描述

在这里插入图片描述
执行官网的安装指令(也可以选择其他两种方式进行安装)

wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run
sudo sh cuda_11.3.1_465.19.01_linux.run

在这里插入图片描述

  • 1.终端显示“Do you accept the previously read EULA?” 输入accept
    在这里插入图片描述
  • 关键一步!!!终端显示“Install NVIDIA Accelerated Graphics Driver for
    Linux-x86_64 384.81?”一定要输入no!!!!!
    在这里插入图片描述
  • 一路 yes
  • 在这里插入图片描述
    最终在终端显示如下,则说明安装成功:
    在这里插入图片描述
    安装完成后可在 /usr/local/ 下看到安装好的cuda
cd /usr/local/ 
ls

在这里插入图片描述

3. cudnn

官网地址:https://developer.nvidia.com/cudnn

一定要与上面的CUDA进行匹配,cudnn的下载是需要注册登录的。
进入官网,选择指定的版本。
在这里插入图片描述
在这里插入图片描述
下载之后进入压缩包所在文件夹,执行解压指令:

tar zxvf cudnn-11.3-linux-x64-v8.2.1.32.tgz

在这里插入图片描述
在路径中生成cuda文件夹,然后复制 lib64 和 include 文件夹到 /usr/local/cuda-11.3,命令如下:

sudo cp cuda/include/cudnn.h /usr/local/cuda-11.3/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.3/lib64
sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h /usr/local/cuda-11.3/lib64/libcudnn*
nvcc -V

终端显示如下:
在这里插入图片描述

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Ubuntu 16.04中,出现"E: Unable to locate package update"错误可能是由于软件包列表未更新或者软件包名称错误引起的。为了解决这个问题,你可以按照以下步骤进行操作: 1. 首先,确保你的软件源列表是最新的。你可以使用以下命令更新软件包列表: ``` sudo apt update ``` 2. 如果软件包列表已经更新,但是仍然出现错误,那么可能是因为软件包名称错误。请仔细检查你要安装的软件包名称是否正确。如果你不确定软件包的名称,你可以通过以下命令搜索软件包: ``` apt-cache search <package-name> ``` 3. 如果你找不到所需的软件包,那么可能需要添加额外的软件源。你可以编辑`/etc/apt/sources.list`文件,添加合适的软件源,并使用以下命令更新软件包列表: ``` sudo apt update ``` 4. 如果以上步骤都没有解决问题,那么可能是由于网络连接问题导致无法访问软件源。你可以尝试修改软件源的镜像,选择一个快或者可靠的镜像,然后再次运行以下命令更新软件包列表: ``` sudo apt update ``` 总结起来,如果你遇到了"E: Unable to locate package update"错误,你可以尝试更新软件包列表、检查软件包名称、添加额外的软件源或者调整网络连接来解决问题。希望这些方法能帮到你。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [ubuntu16.04 apt-get 报错:E: Unable to locate package update(E: Unable to locate package upgrade)...](https://blog.csdn.net/Dontla/article/details/121961975)[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: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值