Ubuntu重装NVIDIA显卡驱动

我的电脑比较奇怪,只要关机,显卡驱动就失效,必须重新安装,特写一篇博客,记录重装过程。

1 禁用 nouveau

安装好依赖包后需要禁用 nouveau,只有在禁用掉 nouveau 后才能顺利安装 NVIDIA 显卡驱动,禁用方法就是在 /etc/modprobe.d/blacklist-nouveau.conf 文件中添加一条禁用命令,首先需要打开该文件,通过以下命令打开:

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

打开后发现该文件中没有任何内容,写入:

blacklist nouveau
options nouveau modeset=0

保存后,运行

sudo update-initramfs -u
电脑重启之后执行
(重装显卡驱动,输入下面命令,确认一下)

lsmod | grep nouveau  #没有输出,即说明安装成功

2配置环境变量(重新安装这步不需要)

同样使用 gedit 命令打开配置文件:

sudo gedit ~/.bashrc

打开后在文件最后加入以下两行内容:

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 

保存退出。

source ~/.bashrc

3安装显卡驱动        

手动去官网下载.run文件自己安装

下载完成之后:卸载原先的所有驱动:

sudo ./NVIDIA-Linux-x86_64-390.59.run --uninstall

禁用nouveau(前面已做)

验证是否禁用nouveau

lsmod | grep nouveau

ctrl+alt+f1,后

sudo service lightdm stop

sudo ./NVIDIA-Linux-x86_64-390.59.run --uninstall

reboot

安装驱动

进入命令行界面

Ctrl-Alt+F1  之后输入用户名和密码登录即可。Ctrl-Alt+F7 退出命令行界面

sudo service lightdm stop(关闭图形界面,此时Ctrl-Alt+F7无法返回界面,除非 sudo service lightdm stop)

给驱动run文件赋予执行权限(安装文件一般放在home根目录下)

sudo chmod a+x NVIDIA-Linux-x86_64-390.59.run
sudo ./NVIDIA-Linux-x86_64-390.59.run –no-opengl-files
  • –no-opengl-files 只安装驱动文件,不安装OpenGL文件。这个参数最重要
  • –no-x-check 安装驱动时不检查X服务
  • –no-nouveau-check 安装驱动时不检查nouveau 
    后面两个参数可不加。

安装显卡驱动时,就一路Accept就可以,报错The distribution-provided pre-install script failed!,不必理会,继续安装。最重要的一步,安装程序问你是否使用nv的xconfig文件,这里一点要选yes,否则在启动x-window时不会使用nv驱动。安装提示基本是选肯定的,提示nvidia-xconfig时如果你的电脑还存在一个核显或者集显就选择不安装,反之选择安装。

安装完毕后,重启

reboot (重启)

重启,进入图形界面,并不会出现循环登录的问题

如果已经存在,执行nvidia-smi,有类似如下输出代表nvidia驱动正常

nvidia-smi

4安装 CUDA 9.0步骤一样

cuda的卸载方法

To uninstall the CUDA Toolkit, run the uninstallation script provided in the bin directory of the toolkit. By default, it is located in /usr/local/cuda-9.0/bin:

sudo /usr/local/cuda-9.0/bin/uninstall_cuda_9.0.pl

卸载之后还有一些残留的文件夹,,可以一并删除

cd /usr/local/
sudo rm -rf cuda-9.0/

       为了方便开始安装过程的路径查找,把下载的 CUDA 安装文件移动到 HOME 路径下,然后通过 Ctrl + Alt + F1 进入文本模式,输入帐号密码登录,通过 Ctrl + Alt + F7 可返回图形化模式,在文本模式登录后首先关闭桌面服务:

sudo service lightdm stop

然后通过 Ctrl + Alt + F7 发现已无法成功返回图形化模式,说明桌面服务已成功关闭,注意此步对接下来的 nvidia 驱动安装尤为重要,必需确保桌面服务已关闭。

cd.run 文件所处的路径下,安装cuda

sudo chmod +x cuda_9.0.176_384.81_linux.run
sudo sh cuda_9.0.176_384.81_linux.run --tmpdir=/tmp

      其中 cuda_9.0.176_384.81_linux.run 是我的 CUDA 安装文件名,而你需替换为自己的 CUDA 安装文件名,若此时忘记可直接通过 ls 文件查看文件名,这也是我建议把 CUDA 安装文件移动到 HOME 下的另一个原因。 

   按q结束cuda的描述等,然后输入accept,然后是提示是否安装NVIDIA驱动,如果你做了第5步,就输入n,下一个提示是是否安装CUDA Toolkit,输入y,后面的提示都是使用默认或者y了,安装完会显示哪些安装成功,哪些安装失败,一般都会没有问题的

  按照步骤安装,第一个就是问你是否安装显卡驱动,由于前一步已经安装了显卡驱动,所以这里就不需要了,况且 runfile 自带的驱动版本不是最新的。

Do you accept the previously read EULA?
accept/decline/quit: accept

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 361.62?
(y)es/(n)o/(q)uit: n

Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: y

Enter Toolkit Location
[ default is /usr/local/cuda-8.0 ]:

Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y

Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: y

Enter CUDA Samples Location
[ default is /home/zhou ]:

Installing the CUDA Toolkit in /usr/local/cuda-8.0 …
Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so

Installing the CUDA Samples in /home/zhou …
Copying samples to /home/zhou/NVIDIA_CUDA-8.0_Samples now…
Finished copying samples.

===========
= Summary =
===========
Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-8.0
Samples: Installed in /home/xtu, but missing recommended libraries

Please make sure that
- PATH includes /usr/local/cuda-8.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root

To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-8.0/bin

Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up CUDA.

***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 361.00 is required for CUDA 8.0 functionality to work.
To install the driver using this installer, run the following command, replacing with the name of this run file:
sudo .run -silent -driver

Logfile is /tmp/cuda_install_18572.log

剩下的选择则都输入“y”确认安装或确认默认路径安装,开始安装,此时若出现安装失败提示则可能为未关闭桌面服务或在已安装 nvidia 驱动的情况下重复再次安装 nvidia 驱动,安装完成后输入重启命令重启:

reboot

重启后登录进入系统,配置 CUDA 环境变量,与第3步相同,使用 gedit 命令打开配置文件:

sudo gedit ~/.bashrc

在该文件最后加入以下两行并保存:https://docs.nvidia.com/cuda/archive/9.0/cuda-installation-guide-linux/index.html

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

使该配置生效:

source ~/.bashrc

 

5验证 CUDA 9.0 是否安装成功

分别执行以下命令:

cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery

sudo make

./deviceQuery

若看到类似以下信息则说明 cuda 已安装成功:

6安装 cudnn(v 7)

cudnn直接删除相应的文件夹即可

V7

libcudnn.so.7.。。。。后面的版本号根据实际情况修改

cd ~/cuda/include
sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件

然后命令行进入 cudn/lib64 文件夹路径下,运行以下命令(CUDA 9.0也是一样的命令):

cd ~/cuda/lib64
sudo cp lib* /usr/local/cuda/lib64/ #复制动态链接库
cd /usr/local/cuda/lib64/ 
sudo rm -rf libcudnn.so libcudnn.so.7  #删除原有动态文件
sudo ln -s libcudnn.so.7.0.5 libcudnn.so.7  #生成软衔接
sudo ln -s libcudnn.so.7 libcudnn.so  #生成软链接

然后需要将路径/usr/local/cuda/lib64 添加到动态库,分两步:

      1)安装vim。输入:

sudo apt-get install vim-gtk

      2)输入:

sudo vim /etc/ld.so.conf.d/cuda.conf

          键盘按i进入编辑状态,添加文字:                 

/usr/local/cuda/lib64

        然后按esc,输入:(注意有冒号)

:wq  #保存退出

       终端下接着输入 sudo ldconfig 命令使链接生效。

      软链接后可以用sudo ldconfig -v 命令查看是否链接成功:是否有/usr/local/cuda/lib64文件夹。ldconfig命令的用途主要是在默认搜寻目录/lib和/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。

安装完成后可用 nvcc -V 命令验证是否安装成功,若出现以下信息则表示安装成功:

yhao@yhao-X550VB:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

7重新编译 caffe

首先在你要安装的路径下 clone :

git clone https://github.com/BVLC/caffe.git

如果下载网速慢,可以先下载zip文件,再解压。进入 caffe ,将 Makefile.config.example 文件复制一份并更名为 Makefile.config ,也可以在 caffe 目录下直接调用以下命令完成复制操作 :

sudo cp Makefile.config.example Makefile.config

复制一份的原因是编译 caffe 时需要的是 Makefile.config 文件,而Makefile.config.example 只是caffe 给出的配置文件例子,不能用来编译 caffe。

然后修改 Makefile.config 文件,在 caffe 目录下打开该文件:

sudo gedit Makefile.config

修改 Makefile.config 和 Makefile 文件,直接复制原先的备份

OK ,可以开始编译了,在 caffe 目录下执行 :

cd ~/caffe
make all -j8

编译成功后可运行测试:

sudo make runtest -j8

重新编译即可。

这里写图片描述

如果显示结果为上图所示,则表示 caffe 已经成功安装。

8、配置 pycaffe接口环境

       在上一步成功安装 caffe 之后,就可以通过 caffe 去做训练数据集或者预测各种相关的事了,只不过需要在命令行下通过 caffe 命令进行操作,而这一步 pycaffe 的安装以及 notebook 环境配置只是为了更方便的去使用 caffe ,实际上大多数都是通过 python 来操作 caffe 的,而 notebook 使用浏览器作为界面,可以更方便的编写和执行 python 代码。

首先编译 pycaffe :

cd caffe

sudo make pycaffe -j8

编译 pycaffe 成功后,将路径加入到环境变量中

sudo echo export PYTHONPATH="~/caffe/python" >> ~/.bashrc (路径根据实际情况设置)

source ~/.bashrc

验证一下是否可以在 python 中导入 caffe 包,首先进入 python 环境:

python

然后导入 caffe :

>>> import caffe

猜你喜欢

转载自blog.csdn.net/sinat_23853639/article/details/81771692