已存在的情况:CentOS7.3 系统自带Python2.7.5被删除,yum命令抛出
No module named yum
参考链接:http://www.jb51.cc/article/p-aopjqkfn-bom.html
简单情况处理
这种情况是指:重新安装或者升级了Python版本,但自带的Python并没有删除。
# 1. 先找一下旧版本的Python的位置,会返回全部的python位置 ➜ ~ whereis python # 2. 去试验一下,哪个才是正确的 ➜ ~ python2.7 -c "import yum" # 3. 假设上述正常,没有报错 ➜ ~ vim /usr/bin/yum # 4. 修改头部 #!/usr/bin/python --> #!/usr/bin/python2.7 # 5. 理论上这样就可以了
如果自带Python被删除掉了,上述的便不再有效
重新安装Python
安装
➜ ~ cd ~/tmp ➜ ~ wget https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz ➜ ~ tar zxvf Python-2.7.5.tgz ➜ ~ cd Python-2.7.5 ➜ ~ ./configure # ?? 此处需要添加个 ?? ➜ ~ make&&make install ➜ ~
建立软连接
# 先将原来的python备份(如果有的话) ➜ ~ mv /usr/bin/python /usr/bin/python.bak # 假设python2.7 即为当前安装的版本 ➜ ~ ln -s /usr/local/bin/python2.7 /usr/bin/python # 查看python版本 ➜ ~ python --version # 理论上应该正常
!!关键的修复!!
去CentOS的安装光盘或者ISO镜像查找以下文件,需要系统版本一致。
python-2.7.5-48.el7.x86_64.rpm python-devel-2.7.5-48.el7.x86_64.rpm python-libs-2.7.5-48.el7.x86_64.rpm python-urlgrabber-3.10-8.el7.noarch.rpm yum-3.4.3-150.el7.centos.noarch.rpm
# 查看系统版本 ➜ ~ cat /etc/system-release CentOS Linux release 7.3.1611 (Core)
# 说来也巧,刚好找到了网易的镜像 http://mirrors.163.com/centos/7.3.1611/os/x86_64/Packages/ # 在这里面搜索上面的那些包就行。找到 wget 下载下来
# 进行升级 ➜ ~ rpm -Uvh *.rpm
# 重做yum缓存 ➜ ~ yum clean all ➜ ~ yum makecache # 理论上已经可以正常使用了