ubuntu 18.04/20.04 安装 Tensorflow

文章目录

  • 一、 Ubuntu 自带 Python 安装
    • 1. Python 配置
      • (1)准备工作
      • (2)安装 Tensorflow (CPU 版)
      • (2)安装Tensorflow(Nvidia GPU版)
        • 1)前置准备
          • 查看自己的显卡型号
          • 到NVIDIA 官网下载相对应的显卡驱动
          • 禁用nouveau
          • 安装lightdm
    • 安装 gcc & make
    • 安装 NVIDIA 驱动
          • 安装完毕
        • 2)安装
  • 二、 Anaconda 配置 (代替系统 Python)
    • 1. 安装 Anaconda
    • 2. 安装 Tensorflow
    • 3. 安装 Jupyter notebook
  • 三、 远程访问服务器Jupyter Notebook的两种方法
    • 方法1. ssh远程使用jupyter notebook
    • 方法2. 利用jupyter notebook自带的远程访问功能

一、 Ubuntu 自带 Python 安装

1. Python 配置

(1)准备工作

首先,查看 Python 版本

python --version

记下版本号,因为后续有可能要自主选择安装包。
而后查看pip的版本。python3.4+之后的版本通常会自带pip,这里我们只是为一种可能性进行演示。

pip --version

如果pip版本过旧,可以使用如下进行更新;

pip install -U pip #出现问题可使用 sudo easy_install --upgrade pip

(2)安装 Tensorflow (CPU 版)

下面是 CPU 版 Tensorflow 的安装方式

pip3 install tensorflow

(2)安装Tensorflow(Nvidia GPU版)

1)前置准备

查看自己的显卡型号

打开 ubuntu 自带的软件 Software & Updates 选择 Additional Drivers (如下图所示)

ubuntu 18.04/20.04 安装 Tensorflow_第1张图片

可以从上图中看到显卡型号为 NVIDIA GeForce GT 730

到NVIDIA 官网下载相对应的显卡驱动

NVIDIA 显卡驱动下载地址
ubuntu 18.04/20.04 安装 Tensorflow_第2张图片

在相应选项里填上自己显卡的信息,然后点击 搜索

ubuntu 18.04/20.04 安装 Tensorflow_第3张图片

点击 下载

即可下载显卡驱动

禁用nouveau

ubuntu 默认安装了第三方开源的驱动程序nouveau,安装nvidia显卡驱动首先需要禁用nouveau,不然会碰到冲突的问题,导致无法安装nvidia显卡驱动。

编辑文件blacklist.conf:

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

在文件最后部分插入以下两行内容

blacklist nouveau
options nouveau modeset=0

更新系统

sudo update-initramfs -u

重启系统(一定要重启)

重启之后电脑可能无法启动图形界面,此时需按 CTRL + ALT + F1 进入命令行界面,输入自己的用户名和密码即可登录(此时还是命令行界面)。

验证nouveau是否已禁用

lsmod | grep nouveau

没有信息显示,说明nouveau已被禁用,接下来可以安装nvidia的显卡驱动。

安装lightdm

继续在命令行界面中输入

sudo apt-get install lightdm

安装后会跳出一个界面,选择lightdm

然后重启:reboot

重启登录后按CTRL + ALT + F1 进入命令行界面

输入用户名和密码登录后输入:

sudo service lightdm stop //这个是关闭图形界面,不执行会出错。

然后卸载掉原有驱动(如果装过的话):

sudo apt-get remove nvidia-* (若安装过其他版本或其他方式安装过驱动执行此项)

安装 gcc & make

sudo apt-get install gcc

sudo apt-get install make

安装 NVIDIA 驱动

进入文件下载的名录

给驱动 run 文件赋予执行权限:

sudo chmod a+x NVIDIA-Linux-x86_64-450.80.02.run

安装:

sudo ./NVIDIA-Linux-x86_64-450.80.02.run -no-x-check -no-nouveau-check //只有禁用opengl这样安装才不会出现循环登陆的问题

-no-x-check:安装驱动时关闭X服务

-no-nouveau-check:安装驱动时禁用nouveau

安装过程出现 :

"There appears to already be a driver … "

选择 Continue Installation

“… alternate method of installing the NVIDIA driver was detected. (This is usually … )”

选择 Continue Installation

“Nvidia’s 32-bit compatibility libraries?”

选择 No

“Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up.”

选择 Yes

安装完毕

挂载Nvidia驱动:

modprobe nvidia

检查驱动是否安装成功:

nvidia-smi

如果出现如下提示,则说明安装成功:
ubuntu 18.04/20.04 安装 Tensorflow_第4张图片

开启图形界面,重启

sudo service lightdm start
sudo reboot

ubuntu 安装 cuda 11
1 . 下载安装文件
首先去 英伟达官网 下载 cura11 安装。
2 . 安装 cuda
进入存放 cuda 的目录
执行如下命令:

sudo chmod +x cuda_11.0.2_450.51.05_linux.run
sudo ./cuda_11.0.2_450.51.05_linux.run

输入管理员密码后稍等片刻,可能出现如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第5张图片

选择 Continue
然后出现如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第6张图片

按 “q”退出阅读条款
ubuntu 18.04/20.04 安装 Tensorflow_第7张图片

输入:accept
出现如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第8张图片

按 “回车” 取消选择第一项 Driver
ubuntu 18.04/20.04 安装 Tensorflow_第9张图片

按方向 “下” 选择 Install
ubuntu 18.04/20.04 安装 Tensorflow_第10张图片

安装完成后会出现如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第11张图片

3 . 设置环境变量
打开主目录下的 .bashrc文件

gedit ~/.bashrc

添加如下路径

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

更新环境变量

source ~/.bashrc

检查 cuda 是否安装成功:

nvcc --version

如果出现下面的文字就说明成功了
在这里插入图片描述

ubuntu 安装 cudnn 11
1 . 下载安装文件
首先去 英伟达官网 下载 cudnn 安装。
进入存放 “cudnn-11.0-linux-x64-v8.0.4.30.tgz” 的目录
执行如下命令:

tar -zxvf cudnn-11.0-linux-x64-v8.0.4.30.tgz

2 . 安装 cudnn
执行如下命令:

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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

2)安装

安装显卡版本的必须要前面的安装步骤:

sudo apt-get install python3-pip
pip3 install tensorflow-gpu

如果失败,去官网下载包,然后手动安装

sudo pip3 install tensorflow....whl

如果 pip 下载速度比较慢可以使用以下方法:

cd ~/.pip

如果不存在.pip则创建目录

mkdir ~/.pip
cd ~/.pip
touch pip.conf
sudo gedit ~/.pip/pip.conf

在pip.conf中写入如下内容:即

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/ 
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn

二、 Anaconda 配置 (代替系统 Python)

1. 安装 Anaconda

下载页面
清华源下载页面
进入存放 Anaconda3 的目录
执行如下命令:

chmod +x Anaconda3-2020.07-Linux-x86_64.sh
./Anaconda3-2020.07-Linux-x86_64.sh

安装时出现如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第12张图片

按“回车”之后 提示如下:
ubuntu 18.04/20.04 安装 Tensorflow_第13张图片

输入 yes 之后 提示如下:
ubuntu 18.04/20.04 安装 Tensorflow_第14张图片

继续“回车”之后会有一段安装过程,安装完成提示如下:
ubuntu 18.04/20.04 安装 Tensorflow_第15张图片

输入 yes 之后 即可安装成功,提示如下:
ubuntu 18.04/20.04 安装 Tensorflow_第16张图片

安装结束后修改环境变量

gedit ~/.bashrc
export PATH="/home/XXX/anaconda3/bin:$PATH"      // 将 XXX 改为当前用户名
source ~/.bashrc

2. 安装 Tensorflow

安装CPU版本

conda install tensorflow

安装GPU版本

conda install tensorflow-gpu

安装过程会有如下提示:
ubuntu 18.04/20.04 安装 Tensorflow_第17张图片

输入 y 回车,即可完成安装

3. 安装 Jupyter notebook

Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。
简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。
Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。
安装方法:

conda install jupyter notebook

打开方法:

jupyter notebook

三、 远程访问服务器Jupyter Notebook的两种方法

方法1. ssh远程使用jupyter notebook

1 . 在远程服务器上,启动jupyter notebooks服务:

jupyter notebook --no-browser --port=8889

2 . 在本地终端中启动SSH:

ssh -N -f -L localhost:8888:localhost:8889 username@serverIP

其中: -N 告诉SSH没有命令要被远程执行; -f 告诉SSH在后台执行; -L 是指定port forwarding的配置,远端端口是8889,本地的端口号的8888。

注意:username@serverIP替换成服务器的对应账号。

最后打开浏览器,访问:http://localhost:8888/

方法2. 利用jupyter notebook自带的远程访问功能

1 . 生成默认配置文件
默认情况下,配置文件 ~/.jupyter/jupyter_notebook_config.py 并不存在,需要自行创建。使用下列命令生成配置文件:

 jupyter notebook --generate-config

2 . 生成密码sha1值
开启远程访问的话意味着你的 Jupyter Notebook 服务会暴露在公网中,所以为了安全我们需要设置一下页面密码。
在 Jupyter 的配置文件中要填写的并不是密码的明文,而是想要设置密码的sha1值。在这里我们使用 ipython 的 passwd 库来生成密码的 sha1 值。
输入 ipython ,进入 ipython 的交互界面,然后依次输入及其输出如下,按输出说明填写密码:

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:xxxx # 这个是自己输入的密码,后面要用这个登录
Verify password:xxxx
Out[2]: 'sha1:xxxxxxxxxxxxxxxxx'

把 out[2] 的内容复制下来备用
3 . 修改配置文件

gedit ~/.jupyter/jupyter_notebook_config.py

将如下几项内容去除注释后修改值如下并保存:

# 服务ip地址,0.0.0.0代表绑定到本机所有的ip上
c.NotebookApp.ip='0.0.0.0'

# 密码设置,前面的u是表示对单引号内的内容不转义
c.NotebookApp.password = u'sha:ce...刚才复制的那个out[2]的内容'

# 启动时是否打开本地浏览器,我们远程访问的话自然不需要
c.NotebookApp.open_browser = False

# 工作端口
c.NotebookApp.port =8888 #随便指定一个端口

4.启动服务
在想要工作的目录下输入 jupyter notebook 即可启动服务,但这样的前台服务在 ssh 断开后也会中断。若是想要保持其运行状态的话,可以用 screen 命令将其挂在后台运行。

# 新建一个 screen 窗口,若报错则可能需先安装 screen
screen -S jupyter

# 启动 jupyter notebook 服务
jupyter notebook

之后同时按下键盘上的 Ctrl+a+d 键即可将当前 screen 窗口挂到后台,这样即使 ssh 连接断开了也不会导致服务中断。

在服务启动后用浏览器访问 http://你的服务ip地址:你的端口 即可打开 Jupyter Notebook 的密码页面,输入前面设置的密码(即Enter password那里的输入)后就可以跟本地一样正常使用。

参考链接:
Ubuntu 20.04 LTS 安装Tensorflow
Ubuntu16.04下安装cuda和cudnn的三种方法(亲测全部有效)
Ubuntu: pip源更换为国内源
如何查看已安装的tensorflow的版本和位置
远程访问服务器Jupyter Notebook的两种方法

你可能感兴趣的:(linux)