#不能卸载系统自带的python2.7
#如果不小心卸载了自带的python 2.7版本则需要下载一下文件,
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-backports-1.0-8.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-2.7.5-76.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-chardet-2.2.1-1.el7_1.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-devel-2.7.5-76.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-ipaddress-1.0.16-2.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-kitchen-1.1.1-5.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-libs-2.7.5-76.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-pycurl-7.19.0-19.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-setuptools-0.9.8-7.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-urlgrabber-3.10-9.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/python-virtualenv-15.1.0-2.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-build-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-build-libs-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-libs-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-python-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/rpm-sign-4.11.3-35.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-3.4.3-161.el7.centos.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-plugin-aliases-1.1.31-50.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-plugin-protectbase-1.1.31-50.el7.noarch.rpm
wget http://vault.centos.org/7.1.1503/os/x86_64/Packages/yum-utils-1.1.31-50.el7.noarch.rpm
#然后执行安装刚刚下载的文件,恢复
rpm -Uvh --replacepkgs lvm2-python-libs*.rpm --nodeps --force
rpm -Uvh --replacepkgs libxml2-python*.rpm --nodeps --force
rpm -Uvh --replacepkgs python*.rpm --nodeps --force
rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm --nodeps --force
以上是卸载错误之后恢复。
以下内容为安装:
#先安装依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
#到官网下载 Python-3.8.10.tgz
#解压
tar -zxvf Python-3.8.10.tgz
#进入目录
cd Python-3.8.10
#编译
./configure --prefix=/home/Python38 --with-openssl=/usr/local/openssl
#安装
make && make install
#删除之前的软连接(可不用)
rm -rf /usr/bin/pip3
rm -rf /usr/bin/python3
#添加软连接
ln -s /home/Python38/bin/python3.8 /usr/bin/python3
ln -s /home/Python38/bin/pip3.8 /usr/bin/pip3
#备份软连接
mv /usr/bin/python /usr/bin/python.bak
# 将 python指向python3
ln -s /home/Python38/bin/python3.8 /usr/bin/python
# 查看软连接是否设置好了
ll /usr/bin/python*
ll /usr/bin/pip*
以下是程序部分
# 将现有程序中的依赖包导出txt文件
pip freeze > requirements.txt
#添加依赖
pip3 install -r requirements.txt
#运行 程序
nohup python -u app1.py > test.log 2>&1 &
# 修改yum配置文件 python2.7
vi /usr/bin/yum
#错误解决
ModuleNotFoundError: No module named '_lzma'
# centos系统执行
yum install xz-devel -y
yum install python-backports-lzma -y
#然后重新编译python
#换成python3 后发现防火墙不能用,改变一下文件的第一行 python2.7
vi /usr/bin/firewall-cmd
vi /usr/bin/firewall-offline-cmd
vi /usr/sbin/firewalld
#如果还是不行
#安装python-gobject
#安装了python-gobject后还需要再安装python-firewall
yum install python-gobject -y
yum install python-firewall -y