V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
MekoPan
V2EX  ›  Linux

关于 Linux 系统下 import apt_pkg 的错误,请求组织帮助

  •  
  •   MekoPan · 2019-11-18 14:12:29 +08:00 · 4166 次点击
    这是一个创建于 1818 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天在运行.sh 文件时突然报一下错误: Traceback (most recent call last): File "/usr/lib/command-not-found", line 28, in <module> from CommandNotFound import CommandNotFound File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module> from CommandNotFound.db.db import SqliteDatabase File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module> import apt_pkg ImportError: /usr/lib/python3/dist-packages/apt_pkg.cpython-36m-x86_64-linux-gnu.so: file too short Error in sys.excepthook: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook from apport.fileutils import likely_packaged, get_recent_crashes File "/usr/lib/python3/dist-packages/apport/init.py", line 5, in <module> from apport.report import Report File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module> import apport.fileutils File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module> from apport.packaging_impl import impl as packaging File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module> import apt File "/usr/lib/python3/dist-packages/apt/init.py", line 23, in <module> import apt_pkg ImportError: /usr/lib/python3/dist-packages/apt_pkg.cpython-36m-x86_64-linux-gnu.so: file too short</module></module></module></module></module></module></module></module>

    Original exception was: Traceback (most recent call last): File "/usr/lib/command-not-found", line 28, in <module> from CommandNotFound import CommandNotFound File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module> from CommandNotFound.db.db import SqliteDatabase File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module> import apt_pkg ImportError: /usr/lib/python3/dist-packages/apt_pkg.cpython-36m-x86_64-linux-gnu.so: file too short</module></module></module>

    网上大概查了一下基本都是 no module name apt_pkg 的错误,按照上面的方法流程走一遍也没有修正错误。好像是 linux 的库设置有问题,但是一直到现在也没有修改好。

    5 条回复    2019-11-20 09:47:48 +08:00
    MekoPan
        1
    MekoPan  
    OP
       2019-11-18 14:13:20 +08:00
    dist-packages 目录下存在 apt_pkg.cpython-36m-x86_64-linux-gnu.so 该文件,且我的 python 指向为 3.6 版本
    MekoPan
        2
    MekoPan  
    OP
       2019-11-18 14:16:52 +08:00
    好像是 apt_pkg.cpython-36m 文件损坏的问题,我打开此文件是空的,那么如何重新获取该文件呢
    MekoPan
        3
    MekoPan  
    OP
       2019-11-18 14:32:55 +08:00
    有没有 apt_pkg.cpython-3?m 相关文件的下载地址啊
    atzlinux
        4
    atzlinux  
       2019-11-19 17:49:12 +08:00
    apt reinstall python3-apt

    重新安装这个软件包试一下,在 Debian 里面,/usr/lib/python3/dist-packages/apt_pkg.cpython-37m-x86_64-linux-gnu.so 这个文件,是在 python3-apt 软件包里。
    MekoPan
        5
    MekoPan  
    OP
       2019-11-20 09:47:48 +08:00
    @atzlinux
    已解决问题,谢谢老哥
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1532 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 17:15 · PVG 01:15 · LAX 09:15 · JFK 12:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.