记一次linux环境下的Anaconda离线安装(含pgcopy2模块)

因为开发任务急剧增加,所以最近又向公司申请了几台服务器。 今天尝试在新申请的服务器上搭建新的python环境。 一.Linux环境下的Anaconda安装与

因为开发任务急剧增加,所以最近又向公司申请了几台服务器。

今天尝试在新申请的服务器上搭建新的python环境。

一.Linux环境下的Anaconda安装与卸载

在linux环境下安装Ananconda并不难。

  1. 在Anaconda官网下载相应的安装包
    在这里插入图片描述
  2. 我通过ftp上传到服务器的home文件夹下
    在这里插入图片描述
  3. 通过cd命令转到home文件夹下,通过bash来安装后缀是sh的可执行脚本文件。随后开启安装,安装过程中,基本上一直回车或者yes即可。Anaconda默认安装在root文件夹下。
cd /home
bash Anaconda3-2020.11-Linux-x86_64.sh

如在安装过程中出现如下问题,是由于安装的目标位置空间不足所致,需要修改路径,具体问题描述见Stack Overflow

'''
Traceback (most recent call last):File "concurrent/futures/process.py", line 367, in _queue_management_workerFile "multiprocessing/connection.py", line 251, in recv
TypeError: __init__() missing 1 required positional argument: 'msg'
'''The above exception was the direct cause of the following exception:Traceback (most recent call last):File "entry_point.py", line 69, in <module>File "concurrent/futures/process.py", line 483, in _chain_from_iterable_of_listsFile "concurrent/futures/_base.py", line 598, in result_iteratorFile "concurrent/futures/_base.py", line 435, in resultFile "concurrent/futures/_base.py", line 384, in __get_result
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.
[1770] Failed to execute script entry_point
  1. 环境变量配置
    安装完成后,需要对环境变量进行配置,方便启动python。
    这里,我们通过修改/etc/profile的配置信息来设置环境变量。
    通过命令打开profile文件
sudo vi /etc/profile

输入以上命令,下拉到最后并输入i,可见insert标识。
在这里插入图片描述
在文件末尾加上代码,注意这里加代码的时候有两种写法

第一种方式如下:

#Anaconda
export PATH=$PATH:/root/anaconda3/bin

在运行过程中,发现如果服务器本身有旧版本的python时,这个命令不会覆盖之前的python,此时调用新版本的python,需要输入:python3

第二种方式如下:

#Anaconda
export PATH=/root/anaconda3/bin:$PATH

这个命令会覆盖之前的python,直接输入python即可调用新版本的python。

这里我选择第二种方式。

随后按下ESC键,输入:,再输入wq按下回车就可以保存退出了

之后重新载入配置文件,输入:source /etc/profile

完成以上步骤后,输入Python,如果顺利进入以下页面则为安装成功。
在这里插入图片描述

  1. Ananconda卸载
    如果需要卸载Anaconda,通过cd命令切换至安装Ananconda的文件夹下
    通过rm -rf命令删除ananconda3安装包在这里插入图片描述
cd /root
rm -rf /root/ananconda3

之后执行第4步环境变量配置命令,删除最后两行启动python的命令即可

二.pgcopy2模块的安装

鉴于需要连接postgre数据库读取数据,因此安装Anaconda后,我们需要进一步安装pgcopy2模块。

这里需要说明一点:安装pgcopy2模块的时候,PostgreSQL并不是必须安装的!!!

官方文档中说,有两个模块可以实现安装pgcopy2模块
在这里插入图片描述
psycopgpsycop-binary两个包,而psycop-binary里面配置了相关的依赖,建议安装这个包。

对于初学者来说,如果你不想麻烦的解决一个个缺少前置依赖的问题,那么直接在上面链接中下载和python版本适应的whl文件,通过pip install方式安装是最好的方式。
在这里插入图片描述


强烈不建议解压tar.gz文件通过python setup.py build方式安装。

如果你通过这种方式安装,你可能会遇到这样一个问题:

Error:pg_config executable not found

然后,进一步百度这个问题,发现需要安装PostgreSQL,然后进一步安装PostgreSQL你又会发现一堆安装问题。

好不容易安装好PostgreSQL后,进一步安装psycopg.tar.gz文件,你可能还会发现诸如以下的错误:
在这里插入图片描述
本人就是在这个坑里面折腾了1天多的时间…

以上就是我在linux离线环境下配置Anaconda的流程,希望对你有所帮助。