新工作站搭建深度学习环境Ubuntu16.04+cuda9/10+cudnn7+tensorflow1.12+anaconda3

0前言:

使用新的工作站,显卡navida 2080,从零开始搭建深度学习环境

1安装linux操作系统

使用u盘做一个用ubuntu16.04系统,(上网搜索怎么做系统盘)

注意:

装机之前,电脑一定要联网。

开机,按enter 按F1进入bios(不同电脑配置可能不同),bios 的boot可能需要配置(setup中startup),U盘启动方式,有两种,一种是UEFI,另一种是LEGACY。如果二者都有,就什么不用做。一般都有UEFI,没有UEFI 的话,可能要降低系统版本。

选择第一个ubuntu系统,可以直接安装16.04。这里选择的是进入第二个,进入ubuntu 的系统,然后在系统中安装16.04

 

进入U盘中的ubuntu16.04的系统中后,

点击安装ubuntu16.04系统到电脑。

(ubuntu系统分区,可以给ubuntu系统分区,这里以为是新电脑,就先不分区了。)

 

如果要查看系统显卡,和我一样是新电脑,无法直接看到,可以使用指令查询。

参考网址中的方法一。

https://blog.csdn.net/maizousidemao/article/details/88821949

 

如果想要安装双系统,参考链接:

https://www.cnblogs.com/masbay/p/10844857.html

 (分区过程中如果遇到不到用于efi的问题:可能是选择usb启动时,选错了模式:u盘是在legency 下启动的,导致的没有efi 分区,需要在uefi模式下启动u盘)

 

2编译内核(为了支持cuda)。

参考链接:https://www.cnblogs.com/fogcell/p/6126316.html

 版本对应关系参考链接:https://blog.csdn.net/qq_30965187/article/details/106159584

先更新源:

sudo apt-get update

uname –r 查看本机内核版本

(在源上寻找内核源码名称)apt-cache search Linux-source

如下图:

 

sudo apt-get install linux-source-4.4.0 

(执行这条命令就会自动下载并安装适合本机系统内核的Linux-source-4.4.0这个内核源码)

解压下载的压缩包,在/usr/src/linux-source-4.4.0/

可以使用ls查看在其中的4.4.内核压缩包linux-source-4.4.0.tar.bz2是否存在。

直接解压到home文件夹下(非根目录下)

 

tar jxvf linux-source-4.4.0.tar.bz2 -C /home/yourdir

解压到你的文件夹下 或者解压到当前目录下也行。

在解压出来的的linux-source-4.4.0目录下执行配置内核的工作

 

cd进入到U盘目录下,将已经配置好的.config文件(这个是隐藏文件,看不到,使用指令ls -all可以看到)(.config文件的生成相当于参考链接中的5,6,7步)。

执行

cp /media/dftc/Ubuntu\ 16.0/.config  ~/linux-source-4.4.0/  

其中的(路径根据自己的情况更改)

这一步可以替换为:sudo make oldconfig //配置内核

 

make -j20

执行过程较长

在执行的过程中,会报错,请根据提示安装一些配置,以消除错误。

例如:

 

(根据错误提示百度解决命令)

这个指令可以解决上面的报错:

sudo apt-get install libssl-dev

 

编译模块:

sudo make modules

安装模块的驱动:

sudo make modules_install

系统安装:

sudo make install

提示done 完成

 

更新系统引导

cd /boot/grub

sudo update-grub

重启  reboot

重启后如果进入的还是4.15的内核:

解决方法:百度ubuntu系统引导修复。参考链接https://blog.csdn.net/chekongfu/article/details/84872841

 

 

3安装最新英伟达驱动。

 旧版本的驱动不一定支持多版本cuda。

不同cuda对驱动版本的要求:https://blog.csdn.net/weixin_42575979/article/details/108400930

重启后进入 advance。。。(第二个),然后进入ubuntu4.4.223

删除所有英伟达驱动

$sudo apt-get remove --purge nvidia*

安装英伟达显卡驱动

首先

cd /lib/modules/4.4.223/kernel/drivers/gpu/drm/nouveau/
重命名,使文件失效
sudo mv nouveau.ko nouveau.ko.org

把启动文件系统更新sudo  update-initramfs -u

reboot重启:

重启ubuntu后发现分辨率降低,字体变大,表明卸载nouveau成功。

重启后选第二个advance,进入4.4.223.recover中,(最后一个),在这里可以直接拿到root权限。

 

cd 到驱动安装文件所在的目录下。

执行命令 

sudo chmod 777 ./NVIDIA-Linux-x86_64-440.82.run 

sudo  ./NVIDIA-Linux-x86_64-440.82.run

安装过程中,会出现选择界面(提示xconfig。。。。。),选择NO。

安装完成后reboot重启,系统率变成正常,说明安装成功。

 

4安装无线网卡

复制安装文件rtl8192eu-linux-driver-realtek-4.4.x到目录下,(稍后贴上安装包网盘地址)

cd到安装文件目录rtl8192eu-linux-driver-realtek-4.4.x下

make

sudo make install

如果找不到,执行命令lsusb

加入重新开机后,找不到无线网卡,重新执行命令sudo make install,就可以。

5,安装cuda9;

 参考链接:https://blog.csdn.net/wanzhen4330/article/details/81699769

(1)下载安装包:首先去英伟达官网下载cuda安装包https://developer.nvidia.com/cuda-toolkit-archive

cuda_9.0.176_384.81_linux.run

(2)安装cuda。

执行如下命令:

sudo sh cuda_9.0.176_384.81_linux.run

然后用一本书的书角压住回车键,直到服务条款显示到100%。接着按下面的步骤选择:

accept

n(不要安装driver)

y

:这个是默认路径,直接回车就行。

y

y(n也可以)

安装完成后,设置环境变量。

(3)设置环境变量。

打开主目录下的 .bashrc文件添加如下路径,

sudo gedit ./.bashrc

在最后面添加这三句。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

 

终端运行:source ~/.bashrc

关机终端界面,重新打开

检查:nvcc --version,如果显示下面的文子就说明安装成功了。 (图片来自网络)

 

6,安装cudnn;

 参考链接:https://blog.csdn.net/wanzhen4330/article/details/81699769

(1)下载安装文件

按需求下载cudnn的安装文件https://developer.nvidia.com/rdp/cudnn-archive

 

将cudnn解压后,出现一个cuda的文件夹。

sudo cp cuda/include/cudnn.h /usr/local/cuda-9.0/include/

sudo cp cuda/lib64/libcudnn* /usr/local/cuda-9.0/lib64/

sudo chmod a+r /usr/local/cuda-9.0/include/cudnn.h

sudo chmod a+r /usr/local/cuda-9.0/lib64/libcudnn*

之后加压的文件cuda就可以删除了

(3)查看cudnn版本

在终端输入

cat /usr/local/cuda-9.0/include/cudnn.h | grep CUDNN_MAJOR -A 2

如果出现下图所示版本信息,说明安装成功。 (图片来自网络)

cuda9.0,在运行yolo预测的时候,可能无法出现预测框,可以安装cuda10,cudnn10.方法同上。

 切换cuda版本   tensorflow1.12使用cuda9.0    yolo,tensorflow1.14等使用cuda10.0

cd /usr/local

删除之前的软链接

sudo rm -rf cuda

重新创建软连接到9.0

sudo ln -sf cuda-9.0 cuda

7安装java环境

参考链接https://blog.csdn.net/sangewuxie/article/details/80958611

下载安装包 JDK-8U231

解压到home下

cd/usr

sudo mkdir java

sudo chmod 777 java

cd ~

复制到文件夹sudo cp -r jdk1.8.0_231/ /usr/java

配置环境变量

sudo gedit /etc/profile

复制下面几句到文件内容下面。

export JAVA_HOME=/usr/java/jdk1.8.0_231
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JRE_HOME=$JAVA_HOME/jre

尝试java

1.source /etc/profile更新当前终端环境变量。

2,reboot重启

3.java -version 

8,安装s32V,安装后install更新;

官网下载安装包S32DS.3.2_linux.x86_64.bin        (已经下载好了)

 

进入NXP官网,下载S32V安装指导。按照已经下载好的文件安装。(已经下载好了)

libs32bz2-1.0有问题,解决方法参考链接:https://blog.csdn.net/ljttianqin/article/details/77367759

sudo apt-get install lib32z1 lib32ncurses5 libbz2-1.0:i386 lib32stdc++6

第四步(Table4)openjdk不要安装。跳过

其余按照步骤安装,全部都是yes

最后 

 

 sh ./ S32DS.3.2_linux.x86_64.bin

    (前面不要加sudo) 

然后打开

进到桌面端,找到S32V,进入最后一层文件夹下,右键运行,

在指令段./s  Tab键  即可打开。

安装更新。

安装完成之后,

 

安装RTX,

将VSDK_S32V2_RTM_1_5_0(已经有了)文件复制合并到,nxp/......路径下

 打开之后更新,这一步时间较长。。

 

9安装anaconda

网上资料参考:

[安装教程] linux创建conda虚拟环境_博客-CSDN博客_linux conda创建虚拟环境  https://blog.csdn.net/clksjx/article/details/84192626

 

下载anaconda安装包,Anaconda3-2020.02-linux-x86_64.sh   (已经下载了)

sudo chmod 777 ./Anaconda3-2020.02-linux-x86_64.sh

./Anaconda3-2020.02-linux-x86_64.sh

一直按enter指导出现yes or no

yes

yes。。

一直yes

装完之后,重新打开终端即可。

 

10,安装eiq环境。

$ cd /home/lanyou/.conda/

 $ conda activate

$ conda env

退到跟目录:

$ sudo chown -R lanyou anaconda3

$ conda env create -n eiq_auto -f /home/lanyou/NXP/S32DS.3.2/S32DS/software/VSDK_S32V2_RTM_1_5_0/s32v234_sdk/tools/eiq_auto/environment.yml       

     这一步时间比较久,耐心等待

$conda activate eiq_auto

添加路径

$export PYTHONPATH=$PYTHONPATH:/your/path/to/s32v234_sdk/tools

 

 11,安装tensorflow1.12-gpu源码编译。

安装bazel

参考链接:https://www.cnblogs.com/hayley111/p/12887853.html

将下载好的tensorflow1.12.0复制到home下面。

cd tensorflow-1.12.0

创建工具:

bazel build tensorflow/contrib/lite/toco:toco

它会自动下载一些相关依赖项。

其他需要安装的内容(待补充ing)

 参考链接:https://www.cnblogs.com/hayley111/p/13037616.html

 

源码编译如果不成功。可以尝试pip安装,方法如下:

参考链接:https://blog.csdn.net/patience_of_study/article/details/82779424

1,前提是显卡驱动、cuda、cudnn、anaconda都已经按照前面的安装完毕,并且版本正确

2,进入虚拟环境 

source activate eiq_auto

3,升级pip

pip install --upgrade pip

4,安装tensorflow

pip install --ignore-installed --upgrade https://download.tensorflow.google.cn/linux/gpu/tensorflow_gpu-1.12.0-cp36-cp36m-linux_x86_64.whl

网址要根据你下载的tf版本不同而改变。

安装过程中,可能会遇到下载报错,一般都是网络问题,请更换网络,多尝试几次。

报错例如下图:

如果网络没有问题,下载的过程中还是经常报错,有可能是你的临时栈太小了,查看指令如下:

ulimit -a

重点查看core file size和stack size这两项,可以做如下修改:

ulimit -c unlimited
ulimit -s 204800

然后重新执行安装指令,不出意外的话,应该能顺利安装成功,成功的界面如下:

 

 在虚拟环境中,可以使用conda list指令查看自己安装的tf版本是否正确,如下:

也可以在虚拟环境中进入python,查看tf的安装版本和路径,指令如下:

import tensorflow as tf
tf.__version__
tf.__path__

 

12,安装拼音输入法。(如果需要)

system setting 中进入language support,

它会自动applying changes下载

然后关闭,重新打开

然后将ibus改为fcitx

reboot重启

 

右上角出现小企鹅或者小键盘,

将搜狗拼音输入法的安装包复制到home下。

安装命令

sudo dpkg -i sogoupinyin_2.3.1.0112_amd64.deb

 或者直接双击打开即可

reboot重启即可

(有可能用几次会崩溃,需要重新配置,可百度,可咨询惠源)

13硬盘分区(如果需要)

 将2T硬盘分为4个盘

可以使用大白兔工具等,具体百度一下即可找到,这里不再多说。

总结,

这个过程比较繁琐,也比较耗时,在安装过程中遇到错,不要慌,百度解决。不过我上面写的这么详细,问题不大。祝大家都能顺利搭建好环境,顺利开展工作。

 

补充:进入到控制台的方法。

ctrl+Alt+F1/F2/F3/F4

 

posted @ 2020-06-23 21:03  yk要努力  阅读(600)  评论(0编辑  收藏  举报