采用离线安装方法,Ubuntu 18.04,预先装了cuda 9.0,参考cuda安装
0 下载nvidia驱动
可以去官网下载对应的run文件,我自己使用的是390版本的
1 首先删除现有的nvidia驱动
sudo apt-get remove --purge nvidia*
sudo apt autoremove
2 禁用Ubuntu自带nouveau驱动
sudo gedit /etc/modprobe.d/blacklist.conf
在最后一行加上
blacklist nouveau
将自带nouveau驱动加入黑名单
使更改生效
sudo update-initramfs -u
3 重启并准备
重启后,应该还是默认进入图像界面,按Ctrl+Alt+F1-F6(我的是F3)进入命令界面
然后关闭显示服务
sudo service lightdm stop
bug1: unit lightdm.service not loaded
解决办法:sudo apt install lightdm
保证gcc版本为7.5,由于之前安装cuda时将gcc切换到5版本,此时如果直接安装会报错,因此需要先切换到gcc-7版本,切换方法参考
g++切换参考
cd /usr/bin
sudo mv gcc.bak gcc
sudo mv g++.bak g++
gcc --version
g++ --version
直到gcc和g++版本都为7.5
4 正式安装
切换到已经下载好的nvidia run驱动的文件夹下,然后
sudo sh ./NVIDIA-Linux-x86_64****
之后有一些选项,描述可能有出入,但是主体是对的,选择如下:
(1) The distribution-provided pre-install script failed…
继续安装
(2) Would you like to register the kernel module sources with DKMS…
No
(3) Nvidia 32-bit compatibility libraries?
No
(4) Would you like run the nvidia-xconfig utility…
yes
(3)
bug2: 没有可用的软件包 nvidia-390,但是它被其它的软件包引用了。
解决办法:更换清华源,重新运行
sudo apt install nvidia-driver-390
bug3: 重启后分辨率变低
解决办法:之前采用在线安装,估计是没有禁用自带驱动,导致这个问题,并且nvidia-smi也无法使用,因此使用本博客的离线安装方法即可
5 检查
nvidia-smi
若能输出显卡信息,则安装成功,重启
reboot
6 切换gcc g++版本
参考g++切换参考
bug4: 可以将g++切换回5版本,但是gcc目前切换不成功
分析:实际原因是自己不小心删除了gcc-5命令
解决办法:先卸载gcc-5
sudo apt-get remove gcc-5
然后重新安装
sudo apt-get install gcc-5
然后再按链接操作即可,操作后gcc、g++版本都是5.5,nvidia-smi正常使用,cuda版本为9.0,大功告成