下面是修复 CentOS 7 升级 Python 到 3.6 版本后 yum 不能正确使用的解决方法的攻略过程:
问题描述
当我们在 CentOS 7 系统中升级 Python 版本到 3.6 之后,会出现 yum
不能正确使用的问题,报错信息如下:
[root@centos7 ~]# yum
Traceback (most recent call last):
File "/usr/bin/yum", line 30, in <module>
import yummain
ImportError: No module named 'yummain'
这通常是因为我们安装的新版 Python 将原来系统自带的 Python 覆盖掉了,导致 yum
找不到系统依赖库出现问题。
解决方法
为了解决这个问题,我们需要重新安装 yum
并在系统中重新配置 yum
的 Python 依赖库位置。具体步骤如下:
-
在系统中安装
yum
的依赖库:bash
sudo yum install -y python36-setuptools.noarch python36-devel.x86_64 python36-libs.x86_64 -
下载新版的
yum
:bash
wget https://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz此处我们下载了版本为 3.4.3 的
yum
。 -
解压安装包并进入文件夹:
bash
tar -xzvf yum-3.4.3.tar.gz
cd yum-3.4.3 -
编译和安装
yum
:bash
sudo python3.6 setup.py build
sudo python3.6 setup.py install -
配置系统的
yum
命令:bash
sudo ln -sf /usr/local/bin/yum /usr/bin/yum
此时再次运行 yum
命令,就可以正常使用了。
示例说明
示例1:安装 numpy
出错
如果我们尝试使用 yum
安装 Python 库 numpy
,会出现以下错误提示:
[root@centos7 ~]# yum install numpy
Traceback (most recent call last):
File "/usr/bin/yum", line 30, in <module>
import yummain
ImportError: No module named 'yummain'
这是因为新版 Python 找不到系统依赖的库,所以无法完成安装。通过上述解决方法,我们可以重新安装 yum
并重新配置 Python 依赖库位置,就可以正常使用 yum
安装 numpy
以及其他 Python 库了。
示例2:升级 yum
的版本
有时候我们需要升级 yum
的版本来获得一些新功能或者解决一些已知问题。在使用上述解决方法的时候,我们可以将步骤 2 中的下载链接改为新版 yum
的地址,然后按照步骤 3 和 4 进行编译和安装即可。例如,我们可以下载版本为 3.4.4 的 yum
:
wget https://yum.baseurl.org/download/3.4/yum-3.4.4.tar.gz
然后继续按照正常的步骤进行安装即可。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 - Python技术站