在Linux服务器anaconda环境下离线安装tensorflow-gpu2.3.0版本(python 3.7)

一、背景

0.0、在安装之前需要明确自己需要安装的版本号,必须安装的为cuda、cudnn(这两个与所安装电脑这里也就是Linux服务器显卡有关)、tensorflow-gpu、python,这四个的版本号有对应关系,可参考tensorflow官网

0.1、需要另一个可以联网的电脑or服务器

-下文中所有需要下载的文件都是从这个可以联网的电脑上下载,然后上传到不能联网的服务器上。

-我的情况是:有两台服务器(两个都是linux操作系统,一个可以联网A,一个不能联网B),anaconda环境在A上创建,上传到B,后面的轮子都是在自己电脑(windows操作系统)上,下载的。

-我不知道如果在widows操作系统上创建anaconda环境,复制到linux操作系统上会不会有什么影响,如果真的没有条件,可以试一下,或者自行百度搜索一下~~~

1. 首先在另外一个可以联网的服务器上创建了python3.7的环境,创建方式可参考此链接,创建完成后在自己的anaconda安装路径下(xxx/anaconda/envs/your_name)会出现一个新的文件夹,名字为创建时命名的环境名(your_name),如下图

在Linux服务器anaconda环境下离线安装tensorflow-gpu2.3.0版本(python 3.7)_第1张图片  

2.  这里我建议使用conda list 命令查看是否安装了pip包(如下图,我这里显示已经安装了),这个在后续安装中会用到。如果没有安装就安装一下,应该是conda install pip

随后在anaconda的安装路径下的envs文件夹下找到自己创建的虚拟环境,这里为tensorflowgpu_py37,把此文件夹打包整个复制到不能联网的服务器上

二、开始安装tensorflow-gpu-2.3.0

这里默认已经安装了CUDA和cudnn,cuda和cudnn与tensorflow-gpu和python版本的对应关系参考官网:Build from source on Windows  |  TensorFlow

0. 在此之前还要再强调一点,一定要下载.whl进行安装(有一些我没有找到轮子文件,然后下载压缩包从源文件进行安装,虽然提示安装成功但不知道为什么会识别不出来),如果没找到轮子可以尝试从源文件进行安装(可能每个电脑不一样?毕竟配环境是一个玄学问题hhh),不成功的话建议从互联网上寻找轮子,即.whl文件。

分为两步:

1. 下载tensorflow-gpu的轮子进行离线安装,这里以我自己需要的为例tensorflow-gpu-2.3.0版本,下载地址:Links for tensorflow-gpu

在Linux服务器anaconda环境下离线安装tensorflow-gpu2.3.0版本(python 3.7)_第2张图片

 安装命令:

pip install tensorflow_gpu-2.3.0-cp37-cp37m-manylinux2010_x86_64.whl

-我建议使用pip安装,也可以使用conda install xxx ,但是我用conda的时候它会自动寻找网络,最后报http错误,也就是联网失败,使用pip不会遇到这个问题。

-如果使用pip安装时报错:bad interpreter:No such file or directory, 参考此链接

这是由于当前虚拟环境是从另外一个电脑上复制过来的,pip安装的绝对路径是其他电脑上的,需要修改一下。(这是复制环境的通病,有很多绝对路径都是另一个电脑的,不会自动修改,只能后续报错之后,慢慢改,但一般不怎么报错)

 2. 安装gpu版tensorflow依赖包

在线安装时会自动检索安装所需的依赖包,离线安装就需要我们手动把所有的依赖包轮子下载下来进行安装。

下载地址:Simple Index

我安装的依赖包如下: 

 在Linux服务器anaconda环境下离线安装tensorflow-gpu2.3.0版本(python 3.7)_第3张图片

 -有可能你们和我会不一样,但是步骤大概就是 pip install xxx, (xxx是你下载的轮子的全称)如果成功就是成功了,如果需要其他依赖则会报错:需要xxx,后面还会跟着版本号的要求。

搜索这个依赖包,下载,pip install xxx,安装,成功后再安装上一级的包,一层一层安装就好了。

2.1 如何搜索依赖包

如下图所示:若报错提示为absl-py这个包缺失,直接在链接simple后面加包的名字进入包的文件夹,里面是对应的各种版本,按要求选择相应的版本

这里再说明一下,还有可能遇到同一个包刚刚已经安装了,刚安装时提示xxx版本>=0.4.0,然后我安装了0.4.0版本,但后面安装别的时候提示缺少xxx版本<1.2.0 >=0.7.1,这时由于我刚刚安装的版本不符合要求,所以应该先把刚安装的版本卸载,重新安装一个符合这两个要求的版本(即>=0.4.0和<1.2.0 >=0.7.1,是一个并区间,不知道会不会出现并区间为null的情况,我没遇到过),卸载命令:pip uninstall xxx,xxx是包的名字,即报错提示的名字,不是轮子全称。

在Linux服务器anaconda环境下离线安装tensorflow-gpu2.3.0版本(python 3.7)_第4张图片

 2.2 报错

最后!

-如果报错内容不是提示缺少依赖,就重新再安装一遍,有可能报错就会改变,如果还不变,就上一级再重新安装一下!

-如果找不到轮子,刚刚提供的是阿里云镜像站,这里还有清华镜像站,都找一下!实在找不到就去百度or谷歌,我还有一个轮子在这里找到了,好像说是官网,我没仔细看。

-希望大家都能成功!!!!

-反正我安装了一万个依赖包终于成功了!!!

三、成功了!

输入命令:conda list |grep tensorflow

查找到有tensorflow-gpu就是安装成功了!!!希望每个人都能到这一步!大功告成!

你可能感兴趣的:(记录,python,tensorflow,linux)