• 【Linux】yum 报错ModuleNotFoundError: No module named ‘dnf‘


    【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
    • 2
    • 3
    • 4
    • 5
    • 6

    问题排查思路

    1. 查看/usr/lib/python[版本]/下的site-packages

    site-packages存在问题,会导致出现上述问题

    处理方法:

    查看python版本,重新安装,这里默认是3.7版本的

    找到rpm包,执行安装命令

    $ sudo rpm -ivh python3-3.7.9-13.x86_64.rpm
    # 如果安装提示此rpm包已经存在,需要手动卸载后,再次安装
    $ 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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    查看/usr/lib/python3.7下是否存在site-package 确认都存在,且大小正常的情况下,执行yum看是否恢复正常

    2. python 默认版本更改

    首先查看yum使用的是python几

    $ head -n 1 /usr/bin/yum
    #!/usr/bin/python3
    
    • 1
    • 2

    上述的yum默认是python3

    查看python3 的版本是否是3.7

    $ python3 --version
    Python 3.8.x
    # 查看默认的版本,发现不是3.7
    # 需要手动修改环境变量,将python3 修改为3.7
    $ ls -l /usr/bin/python3
    lrwxrwxrwx 1 root root 9  78  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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    再次查看yum是否可用

    3.直接卸载版本过高的python

    确认yum 的python版本过高,导致3.7版本无法使用rpm安装,

    联系研发,确认不需要此版本后,将python3.8卸载即可

    $ sudo rpm -e --nodeps python3-3.8-13.x86_64  ## 后面的文件 根据实际情况来定
    
    • 1
  • 相关阅读:
    深度学习入门-卷积神将网络(CNN)
    如何计算质心
    系统架构设计师备考经验分享:保障复习时间
    09_面向对象高级_泛型
    Shell编程_0Linux任务调度
    MySQL数据库之Java中如何使用数据库【JDBC编程】
    Java:自定义实现SpringBoot Starter
    Pandas数据分析:快速图表可视化各类操作详解+实例代码(二)
    【MySQL系列】MySQL的事务管理的学习(二)_ 再次理解隔离性
    sshpass传输文件提示Host key verification failed.
  • 原文地址:https://blog.csdn.net/imliuqun123/article/details/126364978