CentOS 7 离线安装Python
一 安装准备
1.1 依赖下载
1.2 删除CentOS 7自带的Python2软链接
cd /usr/bin
rm python
1.3 上传解压
# 先创建文件夹
mkdir /usr/local/python3
cd /usr/local/python3
# 上传python安装包到此目录下,解压
tar -xvJf Python-3.6.6.tar.xz
二 安装
2.1 安装编译Python所需的依赖
2.1.1 gcc
CentOS 7 gcc下载地址,下载图中gcc所示需要的依赖
# 1 依赖列表
cpp-4.8.5-39.el7.x86_64.rpm
gcc-4.8.5-39.el7.x86_64.rpm
glibc-devel-2.12-1.212.el6.x86_64.rpm
glibc-headers-2.17-292.el7.x86_64.rpm
kernel-headers-3.10.0-1062.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
mpfr-3.1.1-4.el7.x86_64.rpm
# 2 将上面下载的依赖上传到服务器/opt/software/gcc,然后强制安装
cd /opt/software/gcc
rpm -ivh *.rpm --nodeps --force
# 3 检查是否安装成功
gcc -v
2.1.2 zlib
zlib下载地址,去sourceforge下载zlib的源码
# 1 上传到服务器/opt/software/zlib
cd /opt/software/zlib
# 2 解压
tar -zxvf zlib-1.2.11.tar.gz
# 3 配置安装路径
cd zlib-1.2.11/
./configure --prefix=/usr/local/zlib
# 4 编译安装
make && make install
# 5 构建共享库
make clean
./configure --shared
make test
make install
cp zutil.h /usr/local/include/
cp zutil.c /usr/local/include/
# 6 最后将zlib库写入动态库的路径
echo “/usr/local/zlib/lib” >> /etc/ld.so.conf
ldconfig -v
2.1.3 bzip2
# 1 下载后上传到服务器/opt/software/bzip2
cd /opt/software/bzip2
# 2 解压
tar -zxvf bzip2-1.0.8.tar.gz
# 3 指定将源码编译链接到动态链接库上,然后编译安装
cd bzip2-1.0.8/
make -f Makefile-libbz2_so
make && make install
2.1.4 openssl
# 1 下载后上传到服务器/opt/software/openssl
cd /opt/software/openssl
# 2 解压
tar -zxvf openssl-1.1.1l.tar.gz
# 3 配置安装目录
cd openssl-1.1.1l/
./configure --prefix=/usr/local/openssl
# 4 编译安装
make && make install
2.1.5 ncurses
# 1 下载后上传到服务器/opt/software/ncurses
cd /opt/software/ncurses
# 2 解压
tar -zxvf ncurses.tar.gz
# 3 配置安装目录
cd ncurses-6.3/
./configure --prefix=/usr/local/ncurses
# 4 编译安装
make && make install
2.1.6 sqlite
# 1 下载后上传到服务器/opt/software/sqlite
cd /opt/software/sqlite
# 2 解压
tar -zxvf sqlite-autoconf-3370000.tar.gz
# 3 配置安装目录
cd sqlite-autoconf-3370000/
./configure # 使用默认配置即可
# 4 编译安装
make && make install
2.1.7 readline
# 1 下载后上传到服务器/opt/software/readline
cd /opt/software/readline
# 2 解压
tar -zxvf readline-8.0.tar.gz
# 3 配置安装目录
cd readline-8.0/
./configure --prefix=/usr/local/readline
# 4 编译安装
make && make install
2.1.8 tk(需要有tcl)
先安装tlc,下载地址
# 1 下载后上传到服务器/opt/software/tcl
cd /opt/software/tcl
# 2 解压
tar -zxvf tcl8.6.12-src.tar.gz
# 3 配置安装目录
cd tcl8.6.12/unix/
./configure --prefix=/usr/local/tcl
# 4 编译安装
make && make install
再安装tk,tk下载地址
# 1 下载后上传到服务器/opt/software/tk
cd /opt/software/tk
# 2 解压
tar -zxvf tk8.6.12-src.tar.gz
# 3 配置安装目录
cd tk8.6.12/unix/
./configure --prefix=/usr/local/tk
# 4 编译安装
make && make install
2.1.9 libffi
# 1 下载后上传到服务器/opt/software/libffi
cd /opt/software/libffi
# 2 解压
tar -zxvf libffi-3.4.2.tar.gz
# 3 配置安装目录
cd libffi-3.4.2/
./configure --prefix=/usr/local/libffi
# 4 编译安装
make && make install
2.1.10 git
# 1 下载后上传到服务器/opt/software/git
cd /opt/software/git
# 2 解压
tar -zxvf git-2.34.1.tar.gz
# 3 配置安装目录
cd git-2.34.1/
./configure --prefix=/usr/local/git
# 4 编译安装
make && make install
2.2 安装Python
# 进入解压后的目录
cd /usr/local/python3/Python-3.6.6
./configure --prefix=/usr/local/python3
make && make install
2.3 配置软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
2.4 验证是否安装成功
# 启动
python2
python
# 查看版本
python -V
pip3 -V
三 更改受影响配置
# 1 更改yum配置,因为其要用到python2才能执行,否则会导致yum不能正常使用
vim /usr/bin/yum
# 把第一行的#! /usr/bin/python 修改为如下
#! /usr/bin/python2
# 2 其他配置
vim /usr/libexec/urlgrabber-ext-down
# 把第一行的#! /usr/bin/python 修改如下
#! /usr/bin/python2