Ubuntu 18.04.6 LTS安装NVIDIA显卡驱动&CUDA&cuDNN

一、内核说明

        通过以下命令可以查询Ubuntu18.04已经安装的内核

grep menuentry /boot/grub/grub.cfg

        上图说明该Ubuntu一共装有6个linux内核。

        通过以下命令可以查询当前正在使用的Linux内核

uname -a

        输出结果,说明正在使用“GNU/Linux 4.15.0-041500-generic x86_64”这个内核

Linux amax-PowerEdge-T640 4.15.0-041500-generic #201802011154 SMP Thu Feb 1 11:55:45 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

二、安装显卡驱动

        背景:Ubuntu 18.04.6 LTS + GNU/Linux 5.4.0-131-generic x86_64

        我根据Ubuntu18.04安装Nvidia驱动【全网不坑,超全步骤】这个博客进行安装。然后遇到了一系列的问题。一开始是通过

sudo apt-get install build-essential 

        安装build-essential出现了很大的问题,比如,build-essential需要提前安装xx dependency,如果没有这个dependency就不给你安装build-essential成功。结果我就老老实实地听终端的提示来安装gcc和cmake,结果发现还是缺乏xx dependency的问题。恼怒得不行。

        然后装不了,我就不装了,打算直接用

sudo sh ./NVIDIA-Linux-x86_64-510.73.05.run

        安装NVIDIA显卡驱动,结果我还是太天真了。gcc和cmake是安装NVIDIA显卡驱动的必备手续。如果你没有安装这两个的话,它就会报类似于下面的错:

 ERROR: Unable to find the development tool `cc` in your path; please make sure that you have the package 'gcc' installed.  If gcc is installed on your system, then please check that `cc` is in your PATH.

        但是安装gcc需要大量的dependency呀,而且这些dependency也无法通过apt-get install来安装。太气人了,我只好另寻办法。不过终于我还是找到了一个稍微好点的解决方案,也就是使用

sudo aptitude install xxxx

        这样的命令来安装gcc和cmake。如果你无法使用aptitude这个命令,我建议你通过apt-get install来安装一下aptitude这个工具。aptitude这个工具能够更加人性化的方案来为你安装一些包、或者软件,它始终能够为你提供一种安装的方案,而不会像apt-get install一样那么直接(装不成功就是不成功,给你报很多的Error)。

        然后,我就是用aptitude这个工具来稀里糊涂地安装了gcc和cmake这两个东西。

        然后我就欢天喜地地去安装NVIDIA显卡驱动了。但是,你以为这样就完了吗?没有,我又遇到了下面这个错误

ERROR: You appear to be running an X server; please exit X before installing.  For further details, please see the section INSTALLING THE NVIDIA DRIVER in the README available on the Linux driver download page at www.nvidia.com.

        不过还好,这个错误相对来说容易解决,在安装NVIDIA显卡驱动附加上“-no-x-check”就可以了,例如

sudo sh ./NVIDIA-Linux-x86_64-510.73.05.run -no-x-check

        这样,就差不多可以进入NVIDIA显卡驱动的安装过程了。结果,在安装到47%的时候,它又给报了一个错误,类似如下

An error occurred while performing the step : ” Building kernel modules “. See /var/log/nvidia-installer.log for details.

        然后,我研究了很多安装NVIDIA显卡驱动的方法,例如,通过界面自带的“Software/Driver”更新,或者通过apt-get install命令行在线下载安装,或者换安装包。然而,上面这些工作都是徒劳的。主要的原因是目前“GNU/Linux 5.4.0-131-generic x86_64”这个Linux内核不支持最新的NVIDIA显卡驱动。这样的话,你换一千种安装方法都没法装上NVIDIA显卡驱动。

        后面我就想把内核换了(这个思路是对的),从5.44.15(因为根据网上的搜索结果发现,4.15这个Linux内核所支持的NVIDIA显卡驱动是最多的,也就是说,非常多的人的Linux内核都是4.15)。另外,我还发现有的人升级了Linux内核,然后导致了NVIDIA显卡驱动用不了的情况,例如,命令“nvidia-smi”直接失效。

        于是,我通过Linux内核过高以至于NVIDIA显卡驱动不匹配这篇博客在我的Ubuntu18.04上面安装Linux 4.15内核

        安装完以后需要更新一下内核的启动顺序。其步骤如下:

        第一步,查看本机已安装的Linux内核,使用命令

grep menuentry /boot/grub/grub.cfg

        得到的内核列表是有索引的,如下

        然后,索引为“4”的内核就是我们想要使用的。

        第二步,通过下面命令来修改默认的内核启动顺序。

sudo vim /etc/default/grub

        修改“grub”这个文件中的GRUB_DEFAULT=0为

GRUB_DEFAULT=“1>4"

        上面的这个“4”就是内核索引“4”,也就是说,将“Linux 4.15.0-041500-generic”设置为计算机启动后默认选择的内核。

        第三步,更新内核启动顺序,执行一下命令

update-grub

        第四步,重启机器

sudo reboot

        然后通过以下命令来查询重新启动后的内核

uname -a

        终端会输出

Linux amax-PowerEdge-T640 4.15.0-041500-generic #201802011154 SMP Thu Feb 1 11:55:45 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

三、安装CUDA

        参考博客Ubuntu安装cuda与cuDNN

        这个没有什么难度,下载安装包安装就可以了,但是值得注意的是,安装过程不要再重新安装NVIDIA显卡驱动。也就是[ ]Driver需要通过空格键控制取消掉。

        还有就是在更新“~/.bashrc”这个文件的时候,

export PATH=$PATH:/usr/local/cuda/bin  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64

        上面的路径“/usr/local/cuda/”均需要改为你的cuda实际安装的路径,例如,我的为

/usr/local/cuda-7.5/

        下面查询cuda是否安装成功

nvcc --version

        如果成功,会输出

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0

四、安装cuDNN

        安装cuDNN的话也是参考Ubuntu安装CUDA与cuDNN这篇博客。安装难度不大。

        值得注意的是,我当时下载的时候是需要先登录NVIDIA官网的,然后下载的安装包只有“cudnn-local-repo-ubuntu1804-8.4.1.50_1.0-1_amd64.deb”这么一个。因此,我只需要执行一行

sudo dpkg -i cudnn-local-repo-ubuntu1804-8.4.1.50_1.0-1_amd64.deb

        就能够安装cuDNN。

        安装完以后可以通过以下命令来检验是否安装成功

dpkg -l | grep cudnn

        如果成功,会显示

ii  cudnn-local-repo-ubuntu1804-8.4.1.50       1.0-1                                           amd64        cudnn-local repository configuration files

五、后话

        安装NVIDIA显卡驱动实在是太难啦,下面上传一个nvidia-smi命令的截图来记录NVIDIA显卡驱动的核心要素(不过其实也没有什么重要信息,单纯说明NVIDIA显卡驱动是安装成功了)。

        Linux服务器管理实在是太多坑了,希望各位朋友们认真学习,有问题欢迎留言,大家可以一起交流问题的解决方案,博主也很热心帮助大家~

        上述博客只是记录了个人遇到的问题,如果解决不了你遇到的问题,请不要责怪我哦哈哈,感谢理解,爱与尊重!欢迎评论区收到你的问题~

猜你喜欢

转载自blog.csdn.net/qq_36158230/article/details/127738833