在线其他系统操作部分

第一步:下载python3.7.7


/home/files2:需要在系统中创建文件夹files2,将依赖包放入其中
--downloadonly :只下载不安装
downloaddir:下载的位置

yum groupinstall -y  --downloadonly --downloaddir=/home/files2  'Development Tools'
yum install -y    --downloadonly --downloaddir=/home/files2   gcc openssl-devel bzip2-devel libffi-devel



第三步:将python和依赖包拷贝到离线的系统

离线系统操作部分

第一步 进去拷贝的依赖包

rpm -Uvh * --force --nodeps



安装python的依赖

第二步:解压python包

tar -zxvf Python-3.7.0

第三步:创建文件夹
mkdir -p /usr/local/python3

第四步:进入解压后的python包中

./configure prefix=/usr/local/python3 --enable-optimizations
		

–prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local/share,比较凌乱。

如果配置--prefix,如:./configure --prefix=/usr/local/python3可以把所有资源文件放在 /usr/local/python3 的路径中,不会杂乱.用了--prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个相同的操作系统机器即可.当然要卸载程序,也可以在原来的make 目录下用一次make uninstall,但前提是make文件指定过uninstall.

--enable-optimizations是优化选项(LTO,PGO 等)加上这个 flag 编译后,性能有 10% 左右的优化,但是这会明显的增加编译时间,老久了.

./configure命令执行完毕之后创建一个文件 Makefile, 供下面的make命令使用,执行make install之后就会把程序安装到我们指定的文件夹中去。


第四步:编译安装
make && make install

第五步:切换python

我们首先查看一下 Python 可执行文件的位置:


which python


然后切换到相应的目录:


cd /usr/bin

mv python python2.bak


第六步:修改yum

使用vi 进入文本编辑器(如果有多个yum配置文件,都要进去修改):


vi yum


点击i进入编辑模式之后将#!/usr/bin/python 改为#!/usr/bin/python2,按ESC退出编辑模式,输入:wq!保存修改退出。

同样进入文件 /usr/libexec/urlgrabber-ext-down 做同样修改。


第七步:创建软链接

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python


ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip
第八步:安装完毕

分别查看python和pip的版本

python --version
pip --version



参考:https://blog.csdn.net/qq_41261251/article/details/105407495