我是靠谱客的博主 虚幻棒棒糖,最近开发中收集的这篇文章主要介绍centos7误删/usr/bin/python2.7的解决方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我的系统使用的centos7.5.1804

一、问题描述

在centos中尝试使用yum install安装东西时突然出现了一个错误:

 No module named yum

怀疑是yum指向的python版本出现了错误,所以:

编辑yum文件:

vim /usr/bin/yum

然后将首行的#!/usr/bin/python 改为 #!/usr/bin/python2.7。但是这样出现了一个新的错误:

/usr/bin/python2.7:坏的解释器,没有那个文件或目录

然后我去查看/usr/bin/路径,发现并没有python2.7这个可执行文件。再去查看/usr/lib/,里面存在安装了各种site-packeges的python2.7文件夹,说明python2.7的环境并没有被删除。顿悟,原来是之前删除anaconda的python2.7的虚拟环境时,在配置软连接时,误删了/usr/bin 路径下的python2.7和python这两个可执行文件。锁定问题所在,就开始解决。

二、解决方案

        网上搜索大量解决方案,基本都说是误删了python环境之后,通过卸载干净和重新安装来解决。但是,我并没有删除python的环境,而且centos7系统很多配置都依赖于自带的python2.7,例如上面所提的yum等,卸载python需要及其慎重!!!

        最后,我找到了一个博客给了我思路。上面提到,可以通过重新下载、编译python,生成可执行文件。通过尝试,我成功地解决了问题。下面为步骤:

1. 查询系统之前对应版本的python的rpm包:

rpm -qa |grep python-2

我的是python-2.7.5-68.el7.x86_64.rpm

2. 下载rpm包:

wget http://vault.centos.org/7.5.1804/os/x86_64/Packages/python-2.7.5-68.el7.x86_64.rpm

如果是系统版本不同,可以将中间的7.5.1804改为自己对应的版本即可。

3. 将这个源文件包中的python2.7提取出来放到当前目录中:

rpm2cpio ./python-2.7.5-68.el7.x86_64.rpm | cpio -idv ./python2.7

4. 再将提取出来的python2.7这个可执行文件移到/usr/bin目录下即可:

mv ./python2.7 /usr/bin/

补充:如果要想输入python,指向刚刚生成的python2.7环境时,就还需要修改下python的软连接。修改步骤如下:

         查看python指向路径:

which python

        查看alias全部列表:

alias

        取消原先的python软连接:

unalias python

        重新python指向 : 

alias python='/usr/bin/python2.7'

最后

以上就是虚幻棒棒糖为你收集整理的centos7误删/usr/bin/python2.7的解决方案的全部内容,希望文章能够帮你解决centos7误删/usr/bin/python2.7的解决方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部