【Linux】yum 報錯ModuleNotFoundError: No module named ‘dnf‘
yum 在使用的時候,報錯
[root@localhost python3.7]$ sudo yum
Traceback (most recent call last):
File "/usr/bin/yum", line 57, in <module>
from dnf.cli import main
ModuleNotFoundError: No module named 'dnf'
問題排查思路
1. 查看/usr/lib/python[版本]/下的site-packages
site-packages存在問題,會導(dǎo)致出現(xiàn)上述問題
處理方法:
查看python版本,重新安裝,這里默認是3.7版本的
找到rpm包,執(zhí)行安裝命令
$ sudo rpm -ivh python3-3.7.9-13.x86_64.rpm
# 如果安裝提示此rpm包已經(jīng)存在,需要手動卸載后,再次安裝
$ sudo rpm -qa | grep python3-3.7
python3-3.7.9-13.x86_64.rpm
# 卸載完成后,再次安裝即可
$ sudo rpm -ivh python3-3.7.9-13.x86_64.rpm
查看/usr/lib/python3.7下是否存在site-package 確認都存在,且大小正常的情況下,執(zhí)行yum看是否恢復(fù)正常
2. python 默認版本更改
首先查看yum使用的是python幾
$ head -n 1 /usr/bin/yum
#!/usr/bin/python3
上述的yum默認是python3
查看python3 的版本是否是3.7
$ python3 --version
Python 3.8.x
# 查看默認的版本,發(fā)現(xiàn)不是3.7
# 需要手動修改環(huán)境變量,將python3 修改為3.7
$ ls -l /usr/bin/python3
lrwxrwxrwx 1 root root 9 7月 8 2021 /usr/bin/python3 -> python3.8
將軟連接重新指到3.7后,再次查看
$ rm -f /usr/bin/python3
$ ln -s /usr/bin/python3.7 /usr/bin/python3
$ python3 --version
Python 3.7.9
再次查看yum是否可用
3.直接卸載版本過高的python
確認yum 的python版本過高,導(dǎo)致3.7版本無法使用rpm安裝,文章來源:http://www.zghlxwxcb.cn/news/detail-687996.html
聯(lián)系研發(fā),確認不需要此版本后,將python3.8卸載即可文章來源地址http://www.zghlxwxcb.cn/news/detail-687996.html
$ sudo rpm -e --nodeps python3-3.8-13.x86_64 ## 后面的文件 根據(jù)實際情況來定
到了這里,關(guān)于【Linux】yum 報錯ModuleNotFoundError: No module named ‘dnf‘的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!