企业级 centos7更新python2.7 到 python3.8

本文详细介绍了在Linux环境下安装Python 3.8并与其2.7版本共存的方法,包括环境配置、软链接设置及服务修改等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网上有很多升级的文章,搞得头晕。我们很有必要花几分钟时间提前理清一些问题(版本,软链接的结构,安装编译路径等,pip3 等),再去安装3.8就很快了。

1. 建议保留2.7版本,3.8版本应作为新增。

为什么要保留2.7:因为linux或者其他得服务已经依赖了python2.7版本。我们拿到服务器时,并不知道是否有前人已经使用了python2.7版本得依赖服务。所以不建议卸载2.7版本哦。 比如已经安装的yum 服务。

cat  /usr/bin/yum

第一行代码就是 yum第一行代码就 #!/usr/bin/python 这里指定的就是python2.7了。如果后续安装了3.8并且更换了指引或者直接卸载了2.7,那么yum服务就报错。 (额外的python和java不一样。版本直接的兼容 2和3有很大差别。)

2. 现有版本的软链接分析

查看python指引

which python  

在这里插入图片描述

ls /usr/bin/python

pytho
ls 查看后,看颜色发现是软连接,这里并不是真正的pythoh。
根据指引查看 /usr/bin/ 下的python

ll /usr/bin/ | grep python

在这里插入图片描述
带箭头的就是软链接。这里创建了两个软链接。真正的是/usr/bin/python2.7
/usr/bin/python 指向 /usr/bin/python2 指向 /usr/bin/python2.7
之所以这样创建,是方便用户使用。我们窗口敲
python
/usr/bin/python
/usr/bin/ python2
/usr/bin/python2.7
是都可以访问python服务。因为他们的最终指向都是/usr/bin/python2.7
在这里插入图片描述
这里安装有两种方式。
一、敲下python 时,还是原样找到/usr/bin/python2.7 用python2.7版本。
敲下python3 时,找到/usr/bin/python3.8 用python3.8版本。

二、敲下python 时,找到/usr/bin/python3.8 用python3.8版本。
敲下python2 时,找到/usr/bin/python2.7 用python2.7版本。
如果你看明白了上面的软链接。可以灵活使用,不止这两种方法哦

因为我这里是新服务器,还没有其他人有依赖2.7的服务。所以下面是第二种方式的配置。

3. 开始安装 python3.8

python可以理解为给多用户提供服务,建议使用root账户安装。 其他用户请sudo。

先配置环境,这一步很重要,不然后期使用python一些库会受阻。

yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel
# 切换目录
cd /usr/local; 
# 下载源码包
wget http://npm.taobao.org/mirrors/python/3.8.0/Python-3.8.0.tgz; 
# 解压
tar -xzf Python-3.8.0.tgz
# 进到解压路径
cd  /usr/local/Python-3.8.0
# 创建安装路径
mkdir  /usr/local/python3
# 生产makefile文件 并且制定到安装路径 确保已经安装gcc (yum install gcc)
./configure --prefix=/usr/local/python3
# 编译
make
# 安装
make install

查看 bin目录的安装
在这里插入图片描述
真正指向是 /usr/local/python3/bin/python3.8

ll /usr/local/python3/bin/

敲下 /usr/local/python3/bin/python3.8 或者 /usr/local/python3/bin/python3 就显示安装成功了。但是还没有配置软链接。敲下python还是2.7的。还需要配置软链接
在这里插入图片描述

4.配置软链接

这里我们希望敲下 python3 就可以直接访问 python3.8

# 创建软链接 /usr/bin/python3
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
# 创建软链接  /usr/bin/pip3   这里是pip3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
# 删除之前的软连接 这两个是指向2.7的
rm /usr/bin/python;
rm /usr/bin/pip;
# 创建软链接  /usr/bin/python  让它指向到python3.8
ln -s /usr/local/python3/bin/python3 /usr/bin/python;
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip;

查看验证 python -V, pip -V 就OK了。

5.其他服务的修改

到这里我们发现, /usr/bin/python 的软连接是指向3.8的
一些服务的代码 如果有 # /usr/bin/python代码的指引。 我们需要改成
/usr/bin/python2.7 或者 /usr/bin/python2 (因为这两个软链接还在),这样他们还是可以继续使用2.7

打开yum

vim /usr/bin/yum

第一行代码改成

#!/usr/bin/python2.7
vim /usr/libexec/urlgrabber-ext-down;
# 一样的第一行代码改成
#!/usr/bin/python2.7

如果其他服务还有这种问题,改动代码里的指引就可以了。
如果只是3.8的服务,比如该服务器主要跑某个3.8的python服务,上面的就很适合了。

当然知道了软连接的指向。根据服务器的服务需求。我们可以自由配置和改动

相关参考https://www.cnblogs.com/ech2o/p/11748464.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值