一、准备工作
1.update一下更新资源
sudo apt-get update
2.upgrade更新升级
sudo apt-get upgrade
二、安装显卡驱动
附英伟达官网nvidia
1.禁用nouveau驱动
终端中运行:
lsmod | grep nouveau
如果有输出,则代表nouveau正在运行, 需要我们手动禁掉nouveau。
在/etc/modprobe.d中创建文件blacklist-nouveau.conf
sudo touch /etc/modprobe.d/blacklist-nouveau.conf
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
在文件中输入以下内容:
blacklist nouveau
options nouveau modeset=0
更新系统:
sudo update-initramfs -u
reboot
重启后查看nouveau是否已经成功禁用,无输出则为成功:
lsmod | grep nouveau
这时无输出,表示已经成功禁用了nouveau
2.关闭图形化界面(这里最好拍个照片,然后执行以下步骤!!!)
sudo service lightdm stop
按ctrl+alt+f1
进入命令行界面
安装显卡驱动
sudo sh NVIDIA-Linux-x86_64-390.48.run
Accept->Continue installation->sign the kernel module
(为内核模块签名)?选择是
->使用已有的密钥给模块签名还是重新生成?选重新生成密钥
->是否删除已生成的密钥文件?选择否
->安装完成
报错问题及解决
问题:The target kernel has CONFIG_MODULE_SIG set,which means that it supports cryptographic signatures on kernel module. On some systems, the kernel may refuse to load modules without a valid signature from a trusted key.This system also UEFI Secure Boot enabled; many distributions enforce module signature verification on UEFI systems when Secure Boot is enabled. Would you like to sign the NVIDIA kernel module?
解决:禁用UEFI安全启动功能
然后执行下面指令回到图形化界面
sudo service lightdm start
检查 NVIDIA Driver是否安装成功
nvidia-smi
nvidia-settings
至此显卡驱动安装成功
三、安装cuda
在官网下载cuda,这里一定要注意:CUDA版本一定要和显卡驱动版本匹配不然会报错,详情看这里
1.安装驱动也要在非图形化界面安装(此处应该用手机拍照!!!)
关闭图形化界面
sudo service lightdm stop
然后摁下ctrl+alt+f1打开指令窗口
切换到cuda的下载位置
cd /home/用户名/Downloads/
ls
安装依赖项
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
然后安装cuda
sudo bash cuda_9.1.85_387.26_linux.run
安装成功后回到图形化界面
sudo service lightdm start
报错及解决办法
error:Installing the NVIDIA display driver... It appears that an X server is running. Please exit X before installation. If you're sure that X is not running, but are getting this error, please delete any X lock files in /tmp.
解决办法:
这种报错因为我在图形化界面安装CUDA,这个会与x-config起冲突,故要在非图形化界面安装
另一种报错:
error:installing the NVIDIAdisplay driver... The driverinstallation is unable to locate the kernel source. Please make surethat the kernel source packages are installed and set up correctly.If you know that the kernel source packages are installed and set upcorrectly, you may pass the location of the kernel source with the'--kernel-source-path' flag.
错误原因是在安装显卡驱动时没有按以下步骤选择,重新按照本文方法安装显卡驱动后问题就解决了
Accept->Continue installation->sign the kernel module
(为内核模块签名)?选择是
->使用已有的密钥给模块签名还是重新生成?选重新生成密钥
->是否删除已生成的密钥文件?选择否
->安装完成
###2.配置 CUDA 环境变量:
这里一般在安装过程中有引导项,正确选择引导项就可以忽略以下步骤,不放心的话可以看执行以下步骤也没毛病
sudo gedit ~/.bashrc
在文件最后添加:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
修改完毕之后执行一下使其生效:
source ~/.bashrc
检查cuda是否配置正确,到这一步,基本的CUDA已经安装完成了,我们可以通过以下命令查看CUDA是否配置正确:
nvcc --version
3.测试CUDA的sammples
切换到cuda-samples所在目录
cd /usr/local/cuda-9.1/samples 或者 cd /home/NVIDIA_CUDA-9.1_Samples
没有make的话,先命令安装 sudo apt-get install cmake,然后执行编译
sudo make –j4 #-jn是最大限度的使用cpu编译,加快编译的速度,`n`指的是cpu核心数
编译完毕,切换release目录(/usr/local/cuda-8.0/samples/bin/x86_64/linux/release完整目录)
cd ./bin/x86_64/linux/release
检验是否成功,运行实例
./deviceQuery
它显示了你的NVIDIA显卡的相关信息,最后能看到Result = PASS就算成功。
至此cuda安装完成
错误及解决办法
错误一:
error:/usr/local/cuda-9.1"/bin/nvcc -ccbin g++ -m64 -Xcompiler -no-pie -gencode arch=compute_30,code=compute_30 -o cudaDecodeGL FrameQueue.o ImageGL.o VideoDecoder.o VideoParser.o VideoSource.o cudaModuleMgr.o cudaProcessFrame.o dynlink_cuda.o dynlink_nvcuvid.o videoDecodeGL.o -L/usr/lib/nvidia-352 -lGL -lGLU -lX11 -lglut -lcuda -L../../common/lib/linux/x86_64 -lcudart -lnvcuvid -lGLEW /usr/bin/ld: cannot find -lnvcuvid collect2: error: ld returned 1 exit status Makefile:404: recipe for target 'cudaDecodeGL' failed make[1]: *** [cudaDecodeGL] Error 1 make[1]: Leaving directory '/usr/local/cuda-9.1/samples/3_Imaging/cudaDecodeGL' Makefile:52: recipe for target '3_Imaging/cudaDecodeGL/Makefile.ph_build' failed make: *** [3_Imaging/cudaDecodeGL/Makefile.ph_build] Error 2
解决办法:
编译时执行sudo make -j
而不是简单的执sudo make
错误二:
error:./deviceQuery Starting... CUDA Device Query (Runtime API) version (CUDART static linking) cudaGetDeviceCount returned 35 -> CUDA driver version is insufficient for CUDA runtime version Result = FAIL
解决办法
原因是因为显卡驱动版本和CUDA版本不匹配造成的,详情看这里
nvidia-smi #查看自己的显卡驱动版本
nvcc --version #查看cuda版本
在官网重新选择版本下载后,卸载现有版本并且重新安装(此处要拍照后再执行!!!)
关闭图形化界面
sudo service lightdm stop
按ctrl+alt+f1
进入命令行界面
卸载显卡驱动
sudo apt-get remove nvidia*
然后再按教程重新安装符合要求的显卡驱动
所以下载的显卡驱动和cuda版本时一定要注意!!
返回图形化界面指令
sudo service lightdm start
四、安装cudnn
附cudnn下载链接,需注册后下载
切换到下载文件夹、解压文件
tar -zxvf cudnn-8.0-linux-x64-v7.tgz
切换到刚刚解压出来的文件夹路径
cd cuda
复制include里的头文件(记得转到include文件里执行下面命令)
sudo cp include/cudnn.h /usr/local/cuda/include/
复制lib64下的lib文件到cuda安装路径下的lib64(记得转到lib64文件里执行下面命令)
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*
更新软连接
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有动态文件,版本号注意变化,可在cudnn的lib64文件夹中查看
我这里是libcudnn.so.7.1.3
故将libcudnn.so.7的软连接到7.1.3版本上面
sudo ln -s libcudnn.so.7.1.3 libcudnn.so.7 #生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)
然后执行
sudo ln -s libcudnn.so.7 libcudnn.so #生成软链接
sudo ldconfig -v #立刻生效
至此cudnn安装完成
20190221补
- 许久没用,在训练数据时发现报错如下
- 查询原因是因为cudnn版本地导致,这里需要卸载原来的版本然后从官网下载最新的版本进行安装
1、解压出一个名为cuda的文件夹,文件夹中有include和lib64两个文件夹
2、删除原来的cudnn
sudo rm -rf /usr/local/cuda/include/cudnn.h
sudo rm -rf /usr/local/cuda/lib64/libcudnn*
3、安装最新版本的cudnn
cd ~/Downloads/cuda
sudo cp include/cudnn.h /usr/local/cuda/include/
sudo cp lib64/lib* /usr/local/cuda/lib64/
4、建立软链接版本号换成最新的
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.7.4.5 2
sudo ln -sf libcudnn.so.7.4.2 libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig
5、检测链接是否成功更新
cd /usr/local/cuda/lib64/
ll
五、安装anaconda
官网下载后,切换到下载文件夹,执行安装
bash Anaconda2-5.1.0-Linux-x86_64.sh
安装完成后设置启动anaconda2
首先将anaconda2
加入环境变量中
sudo gedit ~/.bashrc
在最后加入export PATH="/home/dc/anaconda2/bin:$PATH"
是环境变量立即生效
source ~/.bashrc
安装启动项
conda install -c anaconda anaconda-navigator
输入anaconda-navigator
即可启动anaconda2
anaconda-navigator
启动界面如下
可以将图标Lock to Launcher 方便启动
至于tensorflow、notebook、spyder
等安装直接通过anaconda2
安装即可,非常方便
至此anaconda2
安装完成
- 升级Anaconda需要先升级conda
conda update conda
conda update anaconda
- 卸载
由于Anaconda的安装文件都包含在一个目录中,所以直接将该目录删除即可。删除整个Anaconda目录:
rm -rf anaconda
最后清理下.bashrc中的Anaconda路径
#本文是在刚安装的ubuntu16.04系统去配置深度学习的环境,每一步也都是通过网上搜索一步步走下来,并且实时的将过程和问题记录下来了供大家学习参考
参考文献
https://blog.youkuaiyun.com/qq_15933615/article/details/79600525
https://blog.youkuaiyun.com/chris_xy/article/details/78062669
https://blog.youkuaiyun.com/zhdgk19871218/article/details/46502637
http://blog.163.com/qimo601@126/blog/static/158220932013112114532667/
https://blog.youkuaiyun.com/htt789/article/details/79627015