原因
之前,曾经在VPS上想更新Python的版本,升级时也把yum依赖的Python2也卸载了,安装Python3.8,同时也把yum重装了一遍。然后,在虚拟机上由于用yum安装不了任何程序,想更新yum,过程中不小心把虚拟机的yum和Python2删除了,所以也重新安装了yum。
重装的教程
1.卸载现有的Python,强制删除已安装程序及其关联:
rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps
2.强制删除Python所有残余文件:
whereis python| xargs rm -frv
3.卸载现有的yum:
rpm -qa| grep yum| xarg
4.强制删除所有残余文件:
whereis yum| xargs rm -frv
5. 检查CentOS 7内核版本:cat /etc/centos-release。
6.寻找对应的文件下载,在http://vault.centos.org找到对应的依赖下载。
我的CentOS7版本完整路径为:http://vault.centos.org/7.7.1988/os/x86_64/Packages/
使用wget下载文件:
libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
python-2.7.5-68.el7.x86_64.rpm
python-backports-1.0-8.el7.x86_64.rpm
python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
python-chardet-2.2.1-1.el7_1.noarch.rpm
python-devel-2.7.5-68.el7.x86_64.rpm
python-iniparse-0.4-9.el7.noarch.rpm
python-ipaddress-1.0.16-2.el7.noarch.rpm
python-kitchen-1.1.1-5.el7.noarch.rpm
python-libs-2.7.5-68.el7.x86_64.rpm
python-pycurl-7.19.0-19.el7.x86_64.rpm
python-setuptools-0.9.8-7.el7.noarch.rpm
python-urlgrabber-3.10-8.el7.noarch.rpm
python-virtualenv-15.1.0-2.el7.noarch.rpm
rpm-4.11.3-32.el7.x86_64.rpm
rpm-build-4.11.3-32.el7.x86_64.rpm
rpm-build-libs-4.11.3-32.el7.x86_64.rpm
rpm-libs-4.11.3-32.el7.x86_64.rpm
rpm-python-4.11.3-32.el7.x86_64.rpm
rpm-sign-4.11.3-32.el7.x86_64.rpm
yum-3.4.3-158.el7.centos.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
yum-plugin-aliases-1.1.31-45.el7.noarch.rpm
yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm
yum-plugin-protectbase-1.1.31-45.el7.noarch.rpm
yum-utils-1.1.31-45.el7.noarch.rpm
7.安装依赖
单个安装方式(针对多个文件一个一个安装):
rpm -ivh --replacepkgs python-2.7.5-68.el7.x86_64.rpm
批量安装方式:
rpm -Uvh --replacepkgs python*.rpm
rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm rpm-*.rpm
下载完成后安装这些包,有些依赖你可能要自己解决:
rpm -Uvh --replacepkgs *.rpm
注意,无论是单个安装还是批量安装,若是出现安装依赖的问题,针对报错的依赖复制下来,在http://vault.centos.org/7.7.11988/os/x86_64/Packages/(结合自己实际的CentOS7版本地址)上进行搜索依赖包,下载到CentOS 7机子上,安装报错的依赖包。
8.完成测试
输入命令yum和python -V
附:
这是我重装VPS服务器使用的yum和Python的RPM安装包,版本为7.7,CentOS 7上应该都可以使用
下载之后,上传到自己的服务器的里的一个文件夹。使用如下命令批量安装:
rpm -Uvh --replacepkgs *.rpm
出现问题再到官网下载对应的依赖包。