在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

时间:2021-11-16 17:20:00

【如有错误欢迎指正!!!】

1.前言

       本文重点在于安装tensorflow,鉴于在安装双系统还有很多小白,我在这把详细的图文教学贴上。目前在研究深度学习的东西,刚入门,想先拿自己的破电脑搭建一个gpu版本的tensorflow用于跑相对简单点的网络。博主的电脑配置很垃圾的,是自己很久前组装的电脑。GPU:Nvidia Geforce 760M·2G;8G内存。本文化包含了Ubuntu系统启动盘的制作,Ubuntu系统的安装,tensorflow-gpu的搭建。自己在搭建tensorflow的时候遇见过很多坑,也花费了很多时间解决,希望把自己的经验写下来,能够帮助更多的人,减少大家在搭建tensorflow的时候花费的时间。tensorflow-gpu版本要求GPU的计算能力在3.0以上,请大家参考【Nvidia GPU运算能力列表】一文。

2.准备工作

2.1 安装Ubuntu16.04

2.1.1 制作启动盘

Ubuntu官网上下载一个镜像(必须是64位,目前tensorflow只支持64位系统),随便找一个4G以上的优盘自己使用UltraISO做一个系统盘就行。步骤如下:

(1)使用UltraISO打开镜像系统,如图1

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图1. 打开镜像时的界面

(2)从菜单栏里 启动,如图2


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图2 .点击启动后的界面


(3)点击写入硬盘映像,在出现的画面中(如图3)写入方式选择 USB-HDD+,然后点击写入,你会看到消息中有“开始写入...”,现在我只需要静静的等待。

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图3. 选择 USB-HDD+,点击写入后的画面


(4)当刻录完成时,你会看到消息中的“刻录成功!”。然点击退出即可。如图4。到这一步系统盘制作成功。

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图4. 刻录完成


2.1.2 系统安装 

(1)在Windows下给自己腾出一个60G左右的空盘,然后右击桌面上的‘我的电脑-->‘管理-->存储-->磁盘管理’,如图5,找到自己的空盘符,在空盘符上右击,点击删除卷。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图5.磁盘管理

(2)把制作好的优盘插入到电脑上,每种型号电脑的一键优盘启动的快捷键不同,具体请查看 ‘快捷键查询’。优盘启动后会出现四个选项。
(a)Try Ubuntu without installing
(b)Install Ubuntu
(c)Check disc for defects
(d)Boot from first hard disk

(3)四个选项中你可以选择(a)或者(b)。(a)和(b)的区别在于点击(a)我们可以在不安装Ubuntu的情况下体验该系统,而(b)是直接进行安装。下边我们看看一下选(a)的画面 如图6,选择(b)的画面如图7。我在这选择(a)。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图6. 选择(a)的画面
在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图7. 选择(b)的画面

(4)如果我们不着急安装系统,我们可以先体验一下Ubuntu的简版。如果想直接安装,我们点击图6桌面上的“Install Ubuntu 16.04.3 LTS”进行安装。然后会出现图7的画面,这个是和(1)中直接点击(b)出现的画面是一模一样的,在图7中我们选择‘中文简体’,如果你想体验英文的话,你可以选择‘English’。点击继续。画面如图8所示。我们什么都不选,直接点击‘继续’。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图8. 准备安装

(5)我们接下来要进行分区,这里的空闲(如图9)就是我们刚才从Windows下删除的卷,接下来我们要将这个空闲进行分区。



在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)


图9. 分区界面

(6)在分区界面我们点击空闲内存,然后点击左下角‘+’号,第一次我们添加根分区‘/boot’(200M 左右呢,我分了256M),此分区Linux的内核及引导系统程序所需要的文件,比如 vmlinuz initrd.img文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;启动撞在文件存放位置,如kernels,initrd,grub。如图10 选择Ext4 日志文件系统,挂载点/boot。下一步我们将处理其他分区。

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图10. 创建/boot分区

(7)接下来我把完整的分区放在下表中(参考博客链接)(挂载点以及类型要选对):注意。。如果分区某个分区分错了,选中该分区,点击左下角‘-’号

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

创建完分区后如图11,最下边‘安装启动引导器设备’选择/boot的分区,在这我选择/dev/sda11,然后点击现在安装。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图11. 创建分区结果图

(8)接下来会出现图12,在中国的领土上随便选。然后点击‘继续’。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图12. 我在中国北京

(9)点击继续后会出现图13,到这里我们只需要静静的等待即可。等安装完成,我们可以重启电脑了。


在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图13. 最后等待时刻
(10)安装完Ubuntu后,在你重启电脑的时候并没有发现进入linux界面的引导项,我们只需要去网上下载一个EasyBCD即可。然后参考【百度经验】来添加引导项。

3.搭建tensorflow-gpu(敲黑板!!!) 

系统版本:Ubuntu16.04
Tensorflow版本:0.12.0
Python:2.7
cuda:8.0 
cudnn :v5.1

3.1 下载Nvidia驱动

(1)点击Ubuntu16.04下的系统设置-->软件和更新-->附加驱动(如图14),选择最新的驱动,然后点击右下角“应用更新”,需要等待一段时间。

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图14. 软件和更新

(2)驱动安装好后,crtl+alt+t打开命令终端,输入nvidia-settings,出现如下图的时候说明驱动已经安装好了。

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

图15. nvidia-settings

3.2 cuda8.0和cudnn v5.1下载(1.87G)及安装

(1) cuda8.0和cudnn v5.1下载

我们首先去nvidia官网下载cuda8.0 (cuda下载)和cudnn v5.1 (cudnn v5.1下载)。但是很多情况下没法下载,打开网页后是空网页。所以在这里我提供给大家一个cuda8.0和cudnn v5.1的下百度云链接。我们把下载的文件放在’ /home/下载‘中即可。如图16

百度云链接: http://pan.baidu.com/s/1i53qaTB 密码:hz1b(里边是一个包含cuda8.0和cudnn v5.1的压缩文件)

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
图16. 存放位置

2)cuda8.0安装

打开终端,输入以下命令

	cd 下载/
	sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb			
	sudo apt-get update 
	sudo apt-get install cuda

(3)降低gcc版本,cuda8.0不支持gcc5.0,我们降低到4.9

sudo apt-get install g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 10
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30
sudo update-alternatives --set c++ /usr/bin/g++

(4)cudnn v5.1安装

      在终端中输入以下命令(注意空格键)

tar xvzf cudnn-8.0-linux-x64-v5.1.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h  /usr/local/cuda/lib64/libcudnn*
sudo find  /usr/ -name 'libcudnn.so'(找到libcudnn.so的路径,我的路径是/usr/local/cuda/targets/x86-64-linux/lib)
sudo cp /usr/local/cuda/targets/x86-64-linux/lib/libcudnn.so /usr/lib
sudo find /usr/ -name 'libcufft.so'(我的位置是/usr/lib,如果和我的路径一样就不需要复制了,否则和上边一样,把找到的libcufft.so复制到/usr/lib中)

(5)配置环境变量

sudo gedit ~/.bashrc(在最后一行加入如下两条)
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$CUDA_HOME/lib64:$CUDA_HOME/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda
source ~/.bashrc

(6)安装tensorflow-gpu0.12.0(联网下进行!)

sudo apt-get install python-pip python-dev
sudo pip install tensorflow-gpu==0.12.0

(7)测试tensorflow-gpu,输入下面两天命令,出现下图,安装成功!

python
import tensorflow  as tf

在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)

到这就大功告成了!


4.参考文献

    1.使用UltraIso制作Ubuntu系统启动盘

    2.Nvidia GPU运算能力列表