【Linux】Python3 环境的下载与安装

前言

由于Python官方声明,自2020年1月1日起,Python 2将不再得到支持,因此在实际工作中,推荐大家使用Python3。本文以 centos7.9 为例,介绍Python3的下载和安装。

官网下载地址:https://www.python.org/

一、下载

1.1 Windows下载



1.2 Linux下载

wget -P /root https://www.python.org/ftp/python/3.10.12/Python-3.10.12.tgz

二、安装

2.1 配置yum仓库

powershell 复制代码
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache

2.2 升级OpenSSL

  • CentOS 7.9 系统默认预装的 OpenSSL 版本为 1.0.2k

Python 版本与 OpenSSL 版本兼容性

powershell 复制代码
#查找文件
find / -name openssl

#备份文件
mv /usr/bin/openssl /usr/bin/openssl_bak
mv /usr/lib64/openssl /usr/lib64/openssl_bak

#安装依赖包 
yum -y install gcc gcc-c++ make zlib-devel perl-devel perl-IPC-Cmd perl-Data-Dumper

#下载文件
wget https://github.com/openssl/openssl/releases/download/openssl-3.1.1/openssl-3.1.1.tar.gz --no-check-certificate

#编译安装
tar zxvf openssl-3.1.1.tar.gz
cd openssl-3.1.1
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib
make && make install

#配置动态库并激活
echo "/usr/local/openssl/lib64" > /etc/ld.so.conf.d/openssl.conf
ldconfig -v

#创建软链接
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -sf /usr/local/openssl/include/openssl /usr/include/openssl

#配置环境变量
echo "export LD_LIBRARY_PATH=/usr/local/openssl/lib64:\$LD_LIBRARY_PATH" >> /etc/profile
echo "export PKG_CONFIG_PATH=/usr/local/openssl/lib64/pkgconfig:\$PKG_CONFIG_PATH" >> /etc/profile
source /etc/profile

#查看OpenSSL版本
openssl version
  OpenSSL 3.1.1 30 May 2023 (Library: OpenSSL 3.1.1 30 May 2023)

2.3 安装依赖包

powershell 复制代码
yum install zlib-devel bzip2-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc gcc-c++ make libffi-devel wget -y

注意:Python 3.10+ 需要 openssl >= 1.1.1

2.4 编译安装

powershell 复制代码
tar xzvf Python-3.10.12.tgz
cd Python-3.10.12
./configure --prefix=/usr/local/python3.10 --with-openssl=/usr/local/openssl --with-openssl-rpath=auto
make 或  make -j $(nproc)
make altinstall

参数解释:
--prefix:指定Python安装路径
--enable-optimizations:启用编译优化,Python 3.8+ 必须用GCC 8+编译,否则报错
--with-openssl:指定openssl安装路径
--with-openssl-rpath:自动设置openssl运行路径
--enable-shared:编译共享库

注意:

1)make -j $(nproc),可以指定线程数量,加快编译安装。nproc查看cpu核心数。

2)使用 altinstall 而不是 install 可以避免覆盖系统默认的Python 2.7版本。

2.5 查看生成的文件

powershell 复制代码
ls -lh /usr/local/python3.10/

2.6 配置动态库并激活

powershell 复制代码
echo "/usr/local/python3.10/lib" >>/etc/ld.so.conf.d/python310.conf
ldconfig -v

2.7 删除旧版本Python环境

由于centos7默认安装Python2环境,文件是/usr/bin/python,为了使用方便,需删除旧版python环境。

powershell 复制代码
rm -f /usr/bin/python

2.8 创建软链接

powershell 复制代码
ln -s /usr/local/python3.10/bin/python3.10  /usr/bin/python
ln -s /usr/local/python3.10/bin/python3.10  /usr/bin/python3
ln -s /usr/local/python3.10/bin/pip3.10  /usr/bin/pip

2.9 查看版本

powershell 复制代码
python --version
  Python 3.10.12

pip --version
  pip 23.0.1 from /usr/local/python3.10/lib/python3.10/site-packages/pip (python 3.10)

2.10 测试使用

powershell 复制代码
python

Python 3.10.12 (main, Dec 10 2025, 16:03:32) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux

Type "help", "copyright", "credits" or "license" for more information.

到此,Python3环境已经成功安装了!!!

三、其他问题

由于centos7系统中很多工具和命令是依赖于自带的python2环境,但是建立新的软链接将系统的python2版本升级为python3后,要手动将这些重要的命令指回原来的python2路径,避免出现因为python版本问题造成的系统工具和指令不可用的问题。

1、修改yum依赖的python版本

powershell 复制代码
vi /usr/libexec/urlgrabber-ext-down

2、修改/usr/bin/yum文件

powershell 复制代码
vi /usr/bin/yum

3、修改防火墙依赖的python版本

powershell 复制代码
vi /usr/bin/firewall-cmd

4、修改/usr/sbin/firewalld文件

powershell 复制代码
vi /usr/sbin/firewalld
相关推荐
码界奇点2 小时前
基于Django REST framework与Vue的前后端分离后台管理系统设计与实现
vue.js·后端·python·django·毕业设计·源代码管理
Apibro2 小时前
【LINUX】时区修改
linux·运维·服务器
遇见火星2 小时前
Linux性能调优:使用strace来分析文件系统的性能问题
linux·运维·服务器·strace
倔强的小石头_2 小时前
Python 从入门到实战(六):字典(关联数据的 “高效管家”)
java·服务器·python
翔云 OCR API2 小时前
企业工商信息查验API-快速核验企业信息-营业执照文字识别接口
前端·数据库·人工智能·python·mysql
BTU_YC2 小时前
python 内网部署
开发语言·python
阿海5742 小时前
安装nginx1.29.3的shell脚本命令
linux·nginx
徐子元竟然被占了!!2 小时前
运行yum命令出现报错:Error: rpmdb open failed
linux
ytao_wang2 小时前
pip install -e .报错ModuleNotFoundError: No module named ‘torch‘
pytorch·python·深度学习