一.读取CentOS的版本号
二.转载部分,具体操作
我在这个博客的基础上修改了下(https://blog.csdn.net/ghostyusheng/article/details/78025094)
注!!如果你只是Python出问题请直接操作第1步并安装python的rpm包
1、删除现有Python
[root@
test
~]
# rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps ##强制删除已安装程序及其关联
[root@
test
~]
# whereis python |xargs rm -frv ##删除所有残余文件 ##xargs,允许你对输出执行其他某些命令
[root@
test
~]
# whereis python ##验证删除,返回无结果
2、删除现有的yum
[root@
test
~]
# rpm -qa|grep yum|xargs rpm -ev --allmatches --nodeps
[root@
test
~]
# whereis yum |xargs rm -frv
3、所需包,请到http://vault.centos.org/7.4.1708/os/x86_64/Packages/找到相应的包名,可能版本号不一样所以建议不要整个包名直接搜索。
python-2.6.6-36.el6.x86_64.rpm
python-devel-2.6.6-36.el6.x86_64.rpm
python-libs-2.6.6-36.el6.x86_64.rpm
python-pycurl-7.19.0-8.el6.x86_64.rpm
python-setuptools-0.6.10-3.el6.noarch.rpm
python-urlgrabber-3.9.1-8.el6.noarch.rpm
python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm-python-4.8.0-32.el6.x86_64.rpm
yum-3.2.29-40.el6.centos.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
yum-utils-1.1.30-14.el6.noarch.rpm
yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm
yum-plugin-protectbase-1.1.30-14.el6.noarch.rpm
yum-plugin-aliases-1.1.30-14.el6.noarch.rpm
4.由于源中版本会更新,具体请查看URL中的版本再下载下来!
[root@
test
~]
# rpm -Uvh --replacepkgs python*.rpm
[root@
test
~]
# rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm
如果在执行步骤4安装rpm包时指令无法通过报错(Faileddependencies)网上有说强制安装指令(--nodeps --force)一定不要使用,这样安装是不起作用的。并且不要一个包一个包安装这样也会报依赖关系错误。这时候你需要多个包一起安装。例如
rpm -ivh yum-3.2.29-40.el6.centos.noarch.rpm yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
如果依然报依赖关系错误你需要看下面的错误提示,分析哪个包在哪个包之前需要被安装自己排序一下。这样就容易成功了
补充:因为我是克隆机,所以我在别的克隆机器上通过yum -version指令可以查看到一些yum的必须包然后再到损坏的机器上安装这些包也行仅针对yum。
三.更新repo源,这时候虽然yum指令安装成功了但是使用yum下载东西的时候会报错There are no enabled repos.
1.安装一个建议版本的虚拟机通过ftp或者ssh将 /etc/yum.repos.d 文件夹下的所有文件拷贝过来
2.参考下列文章
https://blog.csdn.net/u012965373/article/details/51313313