CentOS离线安装Python及第三方库

CentOS是linux的一个版本,和Ubuntu等一样,都是基于Linux内核的不同发行版本。CentOS据说是Red Hat Enterprise Linux (RHEL) 的克隆版本,旨在提供一个免费的企业级计算平台。CentOS 7已经进入了其支持周期的尾声,并且计划在2024年6月30日停止官方技术支持。这意味着红帽公司将在该日期之后不再为CentOS 7提供任何更新(包括安全更新和bug修复)。但是由于历史惯性原因,CentOS目前仍然被广泛使用,尤其在服务器领域。但是关键应用还是建议迁移到其它linux发行版本。

我有一台内网CentOS服务器,不允许连接互联网,但是需要安装Python3(CentOS自带的是Python2)以及各种第三方库,例如:numpy,pandas,geopandas等等。应该如何安装呢?手动下载安装的话,由于其各种包之间存在着极其复杂的依赖关系,而导致手动安装特别复杂和繁琐。经过几次试错之后,我选择使用anaconda 来解决这个问题。

Anaconda 是一个开源的 Python 发行版本,特别为数据科学、机器学习和大型数据分析任务而设计。它不仅仅包括了Python解释器,更重要的是它提供了一套便捷的包管理和环境管理工具——Conda,使得用户能够轻松安装、管理和切换不同的Python版本以及各种科学计算、数据分析相关的软件包。

Anaconda集成了大量的科学计算库,如NumPy、Pandas、SciPy等,同时也包含了数据可视化库(例如Matplotlib、Seaborn)、机器学习库(如Scikit-learn)以及其他常用的开发工具,比如Jupyter Notebook(交互式编程和文档环境)和Spyder(集成开发环境IDE)等。

通过使用Anaconda,开发者可以方便地在不同的项目间创建独立的虚拟环境,保证不同项目之间的依赖不产生冲突,并且能够在多种操作系统(Windows、macOS、Linux)上实现快速部署和配置。

具体的思路是在本地可以联网的centos7上利用anaconda创建虚拟环境,联网安装好各种需要的python包。然后把整个虚拟环境打包上传到那台不可以连接互联网的CentOS上。

首先需要在本地安装一个可以联网的CentOS7虚拟机,然后在本地CentOS7虚拟机上进行如下操作:

1、在官网下载安装anaconda3并且安装:

bash Anaconda3-2023.09-0-Linux-x86_64.sh

此处不详细描述,可查找相关安装教程,建议安装到/opt/anaconda3目录下。

2、创建虚拟环境myenv:

/opt/anaconda3/bin/conda create --name myenv

3、激活虚拟环境:

cd/opt/anaconda3/bin source activate myenv

4、安装第三方库:

condainstall numpyconda

install pandasconda install geopandascondainstall shapelypip install transbigdata -i https://pypi.tuna.tsinghua.edu.cn/simplecondainstall PyMySQLpipinstall mysql-connector -i https://pypi.tuna.tsinghua.edu.cn/simplepip install schedule -i https://pypituna.tsinghua.edu.cn/simpleconda install TensorFlowconda install kerasconda install statsmodelscondainstall beautifulsoupcondainstall sqlalchemycondainstall seleniumconda install scrapy

这里根据自己的需要安装,其中transbigdata等用conda无法安装,转而采用pip install安装,由于墙的问题,需要采用国内镜像源,我使用的清华大学镜像源。

5、退出虚拟环境

source deactivate myenv

6、将虚拟环境目录压缩打包

cd /opt/anaconda3/envstar -zcvf myenv.tar.gz myenv

7、将得到的压缩包myenv.tar.gz下载下来并上传到内网那台不可联网的 centos上。

在内网CentOS7服务器上进行如下操作:

1、离线安装anaconda3,首先从官网下载,然后上传到服务器,运行命令安装:

bashAnaconda3-2023.09-0-Linux-x86_64.sh

安装过程和上面本地虚拟机上是一样的,不再赘述。

2、创建同样的名称的虚拟环境myenv

condacreate--name myenv  --offline

注意,此处需要加参数--offline,采用离线方式,否则会创建失败。

3、删除myenv虚拟环境文件夹

rm-rf /opt/anaconda3/envs/myenv

4、解压缩刚才上传的myenv.tar.gz到文件夹/opt/anaconda3/envs/myenv

tar zxvf myenv.tar.gz -C /opt/anaconda3/envs

5、激活虚拟环境

source activate myenv

5、验证:

pythonimport pandas...

经过验证,虚拟环境迁移到了内网不能连接互联网的CentOS服务器上了。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容