Linux(CentOS7.5) 安装部署 Python3.6(超详细!包含 Yum 源配置!)

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: 该指南介绍了在Linux系统中配置Yum源和安装Python3的步骤。首先,通过`yum install`和`wget`命令更新和备份Yum源,并从阿里云获取CentOS和EPEL的repo文件。接着,清理和更新Yum缓存。然后,下载Python3源代码包,推荐使用阿里云镜像加速。解压后,安装必要的依赖,如gcc。在配置和编译Python3时,可能需要解决缺少C编译器的问题。完成安装后,创建Python3和pip3的软链接,并更新环境变量。最后,验证Python3安装成功,并可选地升级pip和配置pip源以提高包下载速度。

@[toc]

1.配置 Yum 源

# 注意!!!请先切换到 root 账号,然后再执行下面的步骤。
# 安装epel-release
yum install -y epel-release

# 备份旧的 yum 源
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak

# 获取 yum 源镜像
cd /etc/yum.repos.d
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.aliyun.com/repo/epel-7.repo

# 清理缓存
yum clean all

# 重新生成缓存
yum makecache

2.下载 Python3 包

选择你需要安装的 Python3 版本进行下载 —— Index of /ftp/python/

或者通过 wget 方式下载:

wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz

但下载速度比较慢,可以直接通过我的链接下载 —— Python-3.6.5.tgz

3. 解压

tar -zxvf Python-3.6.5.tgz -C /opt/module/

4.安装依赖环境

这一步只要前面 Yum 源配置对了就不会报错,如果出错了,可以直接把 /etc/yum.repos.d 下的文件删除(保留 CentOS-Base.repo),然后重新获取 Yum 源镜像,清理并更新 Yum 缓存。

yum -y install libffi-devel zlib zlib-dev zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi libffi-devel gcc gcc-c++ make

5.安装

# 提前创建一个安装(存储)目录
mkdir /usr/local/python3

# 进入包的解压路径
cd /opt/module/Python-3.6.5

# 指定 python3 安装的路径
./configure --prefix=/usr/local/python3

在执行命令后,可能会出现如下报错信息:

[ad@hadoop201 Python-3.6.5]$ ./configure --prefix=/usr/local/python3
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.6... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... linux
checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in /opt/module/Python-3.6.5': configure: error: no acceptable C compiler found in $PATH
See config.log' for more details

解决方法

这是由于没有 C 语言编译器引起的,下载后即可解决。

yum install -y gcc

重新执行命令,等待约 30s 后如下所示:

image.png

这里提示是否需要开启自动优化,无需理会。

进行编译安装

# 注意!!!该命令请在 Python3 的解压根路径中完成,不要切换路径!
make && make install

这个过程需要等待一两分钟。

如果安装过程中出现了报错,可以看看下面出现的报错场景,找找解决方法。

报错解决后,重新执行编译安装命令。

安装完成后,如下所示:

image.png

出错场景

如果出现如下报错:

Traceback (most recent call last):
File "/opt/module/Python-3.6.5/Lib/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/opt/module/Python-3.6.5/Lib/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/opt/module/Python-3.6.5/Lib/ensurepip/main.py", line 5, in
sys.exit(ensurepip._main())
File "/opt/module/Python-3.6.5/Lib/ensurepip/init.py", line 204, in _main
default_pip=args.default_pip,
File "/opt/module/Python-3.6.5/Lib/ensurepip/init.py", line 117, in _bootstrap
return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
File "/opt/module/Python-3.6.5/Lib/ensurepip/init.py", line 27, in _run_pip
import pip
zipimport.ZipImportError: can't decompress data; zlib not available

这是由于没有 zlib 的工具包导致的,下载该依赖包即可解决:

yum -y install zlib*

如果在安装 zlib 包时,又出现了报错:

Transaction check error:
  package zlib-1.2.7-21.el7_9.x86_64 is already installed

错误概要
-------------

可以先卸载后再重新执行安装命令:

yum -y remove zlib-1.2.7-21.el7_9.x86_64

这一套操作下来,这个问题应该可以得到解决,zlib* 包安装完成。

image.png

6.创建软链接

#注意!!!这里具体的版本号如果你不是 python3.6,则需要修改成你的版本
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3

7.配置 Python3 的环境变量

vi ~/.bash_profile

设置成你的安装路径:

export PYTHON_HOME=/usr/local/python3
export PATH=$PYTHON_HOME/bin:$PATH

刷新环境变量

source ~/.bash_profile

8.验证

python3 --version

image.png

Python3 安装完成~

为了方便后续的使用,建议更新一下 pip 版本:

pip3 install --upgrade pip

补充:安装 openssl-devel

如果没有安装 openssl-devel 包,在下载其它包时,可能会出现如下问题:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

image.png

请先切换到 root 账号,然后执行下载命令:

yum -y install openssl-devel

重编译:

# 注意!!!该命令请在 Python3 的解压根路径中完成!
make && make install

重编译完成后,即可正常下载。

补充:pip3 源配置

# 创建配置文件目录
mkdir ~/.pip

# 创建配置文件并添加源
vi ~/.pip/pip.conf

阿里源配置:

[global]
index-url=https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

包安装测试

image.png

可以看到,源已经成功的替换了,下载速度嘎嘎快。

相关文章
|
17天前
|
Ubuntu Java Linux
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
|
23小时前
|
关系型数据库 MySQL Linux
Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理
Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理
5 0
|
1天前
|
Java Linux
杨校老师课堂之CentOS7部署开发环境Jdk1.8【Linux】
杨校老师课堂之CentOS7部署开发环境Jdk1.8【Linux】
8 0
|
16天前
|
Linux 编译器 C++
Linux centOS 编译C/C++
Linux centOS 编译C/C++
|
1月前
|
缓存
yum 如何设置可以将安装的rpm包都缓存下来
【4月更文挑战第17天】yum 如何设置可以将安装的rpm包都缓存下来
132 0
|
1月前
|
Linux C语言
linux yum安装ffmpeg 图文详解
linux yum安装ffmpeg 图文详解
131 0
|
1月前
|
Linux
linux yum 安装rar和unrar
linux yum 安装rar和unrar
213 0
|
4天前
yum 可以安装rpm包
【6月更文挑战第18天】yum 可以安装rpm包
20 0
|
1月前
|
关系型数据库 MySQL Linux
CentOS 7.4下使用yum安装MySQL5.6
CentOS 7.4下使用yum安装MySQL5.6
141 0
|
5天前
|
弹性计算 监控 Linux
云服务器 ECS产品使用问题之在使用yum安装PHP相关的包时遇到问题,因为系统中找不到php-mysql和php-imap这两个包,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。