安装完python3,删掉了centos自带的python2,执行yum出错。

bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

原因 删掉了 centos 自带的 python。

这是因为yum采用python作为命令解释器,原来系统自带的python解释器为python2.7,然后我之前为了方便将python默认的解释器设为了python3.6,导致按python3.6解析2.7的语法出错了。

yum包的管理是使用python写的,有对应的python版本
通过看报错可以了解到是使用了python2的语法,所以了解到当前yum使用的Python2,因为我单独安装了python3,且python3设置为默认版本了,所以导致语法问题。

解决办法:
1重装 python2.7
下载 Python2:wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz

解压
tar xvf Python-2.7.10.tgz #解压下载的源码包
进入目录
cd Python-2.7.10 #换到源码包的目录下
./configure --prefix=/opt/python2.7 #说明:指定按装目录:/opt/python2.7
make && make install #编译并且安装

建立软连接
ln -s /opt/python/bin/python2.7 /usr/bin/python
ln -s /opt/python2.7/bin/pip /usr/bin/pip

配置环境变量
vim /etc/profile
按 i 进入
export PATH=$PATH:/你的安装目录/bin
按esc :wq! 退出
//生效
source ~/.bash_profile

查看版本号执行命令:python2 -V
pip2 -V

执行yum 如果还是报错:
bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

执行 vi /usr/bin/yum
执行 vi /usr/libexec/urlgrabber-ext-down
查看配置第一行 #! /usr/bin/python 指向的python版本
安装完python3,删掉了centos自带的python2,执行yum出错。_第1张图片

查看软连接路径。
cd /usr/bin
安装完python3,删掉了centos自带的python2,执行yum出错。_第2张图片

修改vi /usr/bin/yum
修改 vi /usr/libexec/urlgrabber-ext-down
#! /usr/bin/python 修改为系统的python2(/usr/bin 下的python版本)

执行yum 如果还是报错:
no module named yum
这个时候只能重装安装yum了。

新建一个文件夹
cd进入
找你对应的版本下载

查看CentOS版本
cat /etc/redhat-release
查看系统版本
cat /proc/version

第一步: 下载
下载地址:http://mirrors.163.com/centos/7/os/x86_64/Packages/
以centos 7 为例子, 不同的操作版本下载对应不同的包(后缀不同 xxxxxx.el7.x86_64)
python-2.7.5-34.el7.x86_64.rpm
python-chardet-2.2.1-1.el7_1.noarch.rpm
python-devel-2.7.5-34.el7.x86_64.rpm
python-iniparse-0.4-9.el7.noarch.rpm
python-kitchen-1.1.1-5.el7.noarch.rpm
python-libs-2.7.5-34.el7.x86_64.rpm
python-pycurl-7.19.0-17.el7.x86_64.rpm
python-setuptools-0.9.8-4.el7.noarch.rpm
python-urlgrabber-3.10-7.el7.noarch.rpm
rpm-python-4.11.3-17.el7.x86_64.rpm
yum-3.4.3-132.el7.centos.0.1.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
yum-plugin-aliases-1.1.31-34.el7.noarch.rpm
yum-plugin-fastestmirror-1.1.31-34.el7.noarch.rpm
yum-plugin-protectbase-1.1.31-34.el7.noarch.rpm
yum-updateonboot-1.1.31-34.el7.noarch.rpm
yum-utils-1.1.31-34.el7.noarch.rpm

第二步: 安装
将上面的包放到一个目录下 进入目录 执行 rpm -ivh --force *.rpm --nodeps

第三步: 完成
执行 yum 就能看到友好的界面了。

你可能感兴趣的:(Linux运维)