我第一次装ubuntu16.04的时候由于是小白,分区的时候分的不合理,所以空间不够用了,索性重装了一次,装ubuntu16.04双系统这里不再赘述,可参考文章 https://blog.csdn.net/demonliuhui/article/details/77483523 注意不要挂载/boot,而是换成efi系统分区。
第一步:安装依赖包
这一步是为了接下来的操作而安装必要的工具
在终端中输入
sudo apt-get install git vim cmake build-essential linux-headers$(uname -r)
安装git vim cmake 最新内核以及当前内核的headers文件
如果有安装包下载失败,可以输入
sudo apt-get upgrade
然后再重新安装软件包
第二步:安装显卡驱动
1、卸载原有的NVIDIA 驱动(如果没装过NVIDIA驱动,则忽略这一步)
sudo apt remove --purge nvidia*
2、禁用ubuntu自带的nouveau显卡驱动,只有在禁用掉 nouveau 后才能顺利安装 NVIDIA 显卡驱动
禁用nouveau驱动
终端中运行: lsmod | grep nouveau
如果有输出,则代表nouveau正在运行, 需要我们手动禁掉nouveau。
在Ubuntu16.04中,我们可以通过以下操作禁用nouveau:
a.在/etc/modprobe.d中创建文件blacklist-nouveau.conf
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
在文件中输入以下内容:
blacklist nouveau
options nouveau modeset=0
b.执行
$ sudo update-initramfs -u
c.查看nouveau是否已经成功禁用
$ lsmod | grep nouveau
若无内容输出,则禁用成功,若仍有内容输出,请重启系统,再检查。
3、安装最新NVIDIA驱动
从官网下载最新的显卡驱动,需要注意的是,Cuda9.1至少需要390版本以上的驱动,此处下载runfile类型并放到/home文件夹下,便于安装
sudo service lightdm stop
关闭图形界面,并ctrl+alt+F1进入命令行模式,登陆后输入
sudo chmod a+x NVIDIA-linux-x86_64-390.48.run
给run文件赋予执行权限,注意这里要对应自己的驱动版本号,然后输入
sudo ./NVIDIA-linux-x86_64-390.48.run -no-x-check -no-nouveau-check -no-opengl-files
sudo reboot
-no-x-check 安装驱动时关闭X服务 -no-nouveau-check 安装驱动时禁用nouveau -no-opengl-files 不安装OpenGl文件(这句一定要加上,不然会出现循环登陆的问题)
安装过程中有几个警告,无视掉,一路安装就行。重启后再命令行输入nvidia-smi就能看见安装驱动的详细信息
第三步:安装 CUDA 9.1
下载cuda9.1的runfile文件,关闭图形界面并进入命令行界面
sudo sh cuda_9.1.85_387.26_linux.run
单击回车,直到提示“是否为NVIDIA安装驱动?”
选择否,因为已经安装好驱动程序,其他都是默认。
最后你会看到cuda驱动、sample、tookit已经安装成功,但是缺少一些库。
添加这些库
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
重新启动图形化界面
$ sudo service lightdm start
同时按住Alt + ctrl +F7,返回到图形化登录界面,输入密码登录。
如果能够成功登录,则表示不会遇到循环登录的问题,基本说明CUDA的安装成功了
重启电脑,检查Device Node Verification
$ sudo reboot
$ ls /dev/nvidia*
a、若结果显示
/dev/nvidia0 /dev/nvidiactl /dev/nvidia-uvm
或显示出类似的信息,应该有三个(包含一个类似/dev/nvidia-nvm的),则安装成功。
b、大多数结果可能会是这样
ls: cannot access/dev/nvidia*: No such file or directory
或是这样的,只出现
/dev/nvidia0 /dev/nvidiactl
a中的一个或两个,但没有/dev/nvidia-num,即文件显示不全。
解决方法:
添加一个启动脚本rc.local ,附上rc.local的百度云链接:
https://pan.baidu.com/s/1HU9QL6Qut3NubJw4RClmIQ,密码:r7j4
下载后放在/home目录下,然后输入
sudo cp rc.local /etc/
保存文件并重启,再次查看,这时你应该能直接看到/dev目录下的三个nvidia的文件
输入:
$ ls /dev/nvidia*
结果显示:
/dev/nvidia0 /dev/nvidiactl /dev/nvidia-uvm
成功!
接着,设置环境变量。终端中输入
sudo gedit ~/.bashrc
在打开的文件末尾,添加以下两行。
64位系统:
export PATH=/usr/local/cuda-9.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64:$LD_LIBRARY_PATH
32位系统:
export PATH=/usr/local/cuda-9.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib:$LD_LIBRARY_PATH
使该配置生效:
source ~/.bashrc
验证CUDA Toolkit
nvcc -V
第四步:安装cuDNN v7
cuDNN的安装是建立在我们成功安装cuda的基础上的,cuDNN同样需要我们去NVIDIA的官网下载适合cuda版本的deb文件或tgz文件。
这里我以tgz文件的安装为例(cudnn-9.1-linux-x64-v7.tgz),
首先解压tgz文件
$ tar -xzvf cudnn-9.1-linux-x64-v7.tgz
接着复制文件到cuda安装路径下,
$ sudo cp cuda/include/cudnn.h /usr/local/cuda-9.1/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-9.1/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
第五步:安装 Anaconda3
清华镜像站下载最新的Anaconda3.5.1,下载成功后执行
bash ~/Downloads/Anaconda3-5.1.0-Linux-x86_64.sh
安装过程中会问你是否添加anaconda3的环境变量,直接输yes,这样就不用额外手动配环境变量了
第六步:安装 OpenCV 3.4.0
命令行进入已解压的文件夹 opencv-3.4.1 目录下,执行:
mkdir build # 创建编译的文件目录
cd build
cmake -D WITH_IPP=OFF -D PYTHON_DEFAULT_EXECUTABLE=~/anaconda3/bin/python3 -D BUILD_opencv_python3=ON -D BUILD_opencv_python2=OFF -D PYTHON3_EXCUTABLE=~/anaconda3/bin/python3 -D PYTHON3_INCLUDE_DIR=~/anaconda3/include/python3.6m -D PYTHON3_LIBRARY=~/anaconda3/lib/libpython3.6m.so.1.0 -D PYTHON_NUMPY_PATH=~/anaconda3/lib/python3.6/site-packages ..
然后执行
make -j4 #开始编译
sudo make install #安装
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
编译时间较长,请耐心等待,我的电脑大概花费了50分钟。安装完成后输入以下指令验证OpenCv版本:
pkg-config --modversion opencv
第七步:安装 Caffe
首先要安装一堆依赖项,不然编译的时候会报错
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-de
然后下载caffe
git clone https://github.com/BVLC/caffe.git
然后