这几天需要在在ubuntu18.04中进行深度学习环境搭建,因此安装了NVDIA显卡驱动,CUDA及cuDNN,踩了很多坑,在此记录一下。
lspci | grep -i vga
运行指令后,会返回显卡型号,如果返回的显卡型号是十六进制,在该网站查询PCI devices (ucw.cz)
进入Official Drivers | NVIDIA网站,根据电脑显卡型号选择对应的驱动包,例如博主的是这样。
之后,SEARCH ——> DOWNLOAD ——> DOWNLOAD,最终下载的安装包在Downloads文件夹下,压缩包后缀为.run。
sudo apt-get remove --purge nvidia*
说明:Nouveau是由第三方为NVIDIA显卡开发的一个开源3D驱动。Ubuntu默认集成了Nouveau驱动。而用户在安装NVIDIA官方私有驱动的时候Nouveau又成为了阻碍。若不禁用 Nouveau,安装时总是报错。
lsmod | grep nouveau
如果有输出,证明没有禁用Nouveau。
sudo gedit /etc/modprobe.d/blacklist.conf
打开文件/etc/modprobe.d/blacklist.conf,在其末尾加上
blacklist nouveau
blacklist vga16fb
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
blacklist lbm‐nouveau
options nouveau modeset=0
调用指令更新配置
sudo update-initramfs -u
重启电脑
sudo reboot
如果电脑重启正常,直接跳过这一节。
如果电脑黑屏无法重启,参考博客Ubuntu18.04安装显卡驱动时禁用nouveau黑屏进不去系统解决办法_uptnv的博客-CSDN博客_ubuntu禁用显卡驱动后黑屏
Ubuntu16.04成功安装Nvidia驱动(解决禁用默认第三方驱动Nouveau后无法进入系统的问题)_不想秃顶还想当程序猿的博客-CSDN博客_禁用nouveau驱动无法进入系统
1)电脑强制关机重启,在重启时一直按Esc进入Grub,之后选择到Ubuntu,按E进入编辑状态。(我的电脑是这样,如果试了不行参考上面两个博客)
2)在Grub编辑状态下,在quiet splash 后面加(先打空格)nomodeset,然后按F10保存启动即可。具体如下。
3)在重启之后,运行该指令。编辑打开的文件,找到GRUB_CMDLINE_LINUX_DEFAULT那一行,在后面加上(在quiet splash后打一个空格) nomodeset(保险起见,nomodeset后面加多一个空格),保存,然后在终端输入 sudo update-grub 重启即可。
sudo gedit /etc/default/grub 或 sudo gedit /etc/default/grub
lsmod | grep nouveau
如果没有输出,证明成功禁用Nouveau。
运行以下指令安装:
sudo apt-get update
sudo apt-get install gcc
sudo apt-get install make
sudo apt-get install lightdm
运行以下指令验证安装:
gcc --version
make --version
参考博客:Ubuntu20.04、22.04安装nvidia显卡驱动——超详细、最简单_道阻且长行则将至!的博客-CSDN博客_ubuntu2004安装nvidia驱动
1)ctrl + alt+ F1 或 ctrl + alt+ F2 或 ctrl + alt+ F3或.......,进入一个ttyx,此时会处于一个黑框。
2)运行以下指令
sudo service lightdm stop
sudo init 3
然后退出tty,ctrl + alt+ F1/F7/F8
3)安装NVDIA驱动
# 进入安装包所在路径
cd ~/Downloads
# 给安装包换个名字
mv NVIDIA-Linux-x86_64-xxxxxxxxxx.run nvidia.run
# 提高文件权限
sudo chmod 777 nvidia.run
# 开始安装
sudo sh nvidia.run ‐‐no‐opengl-files
安装时可能会有错误提示,不需要理会。
安装时选项选择为 accept ——> OK ——> Continu installation ——> Yes ——> OK
详细步骤看这个博客Ubuntu安装显卡驱动详细步骤_李老板Holden的博客-CSDN博客_ubuntu 显卡驱动
安装完成后,重启系统。
4)验证是否安装成功
nvidia‐settings
如果出现页面,说明安装成功。
(1)查看显卡驱动支持的最高版本CUDA
nvidia-smi
(2)由于Ubuntu18.04默认gcc-7,但是CUDA 9.x不支持gcc-7,因此需要安装版本<= 6.3.0的CUDA,否则应安装10.0以上版本CUDA。
(1)进入该网站CUDA Toolkit Archive | NVIDIA Developer找到找到合适版本的CUDA
(2)选择适合的安装包(据说用deb文件安装容易出错,因此直接下载runfile(后缀为.run)文件来安装)
(3)运行两条指令进行安装
(4)在运行第二条指令后,开始安装CUDA,安装选项如下
(5)添加环境变量
gedit ~/.bashrc
在后面添加以下两条指令(根据自己的CUDA版本修改)
export PATH="$PATH:/usr/local/cuda-9.0/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64"
刷新环境变量
source /.bashrc
(6)验证安装
nvcc -V
如图所示:
(1)进入官网cuDNN Download | NVIDIA Developer(需要注册登录)
(2)找到与CUDA版本对应的cuDNN安装包
(3)选择适合的版本进行下载
(4)运行指令进行解压
tar -xvzf 下载的安装包名称.tgz
(5)拷贝相关库文件
sudo cp include/cudnn* /usr/local/cuda/include/
sudo cp lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
(6)完成
参考教程:
1、轮趣教程
2、CSDN博客