Ubuntu Lunar版本中apt-get因Python3的sqlite3库问题无法正常工作求助
Ubuntu Lunar版本中apt-get因Python3的sqlite3库问题无法正常工作求助
大家好,我在Ubuntu Lunar系统上碰到了个棘手的问题,想请各位帮忙分析下:
- 核心问题:
apt-get只要检测到错误(比如源列表里存在无法访问的仓库)就会崩溃。排查后发现根源是Python的sqlite3共享对象存在未定义符号sqlite3_deserialize,直接运行python3 -c 'import sqlite3'就能复现这个导入错误。 - 连锁影响:因为aptitude依赖Python3,一旦系统出现故障,Python的CommandNotFound功能会自动尝试导入sqlite3,结果直接触发崩溃(相关错误日志我贴在下方了)。
- 当前困境:目前能获取到的Python包只有3.11.2-1版本,没办法通过升级或降级来解决问题。
- 定位到的问题文件:
/usr/lib/python3.11/lib-dynload/_sqlite3.cpython-311-x86_64-linux-gnu.so,通过apt-file查询确认它属于libpython3.11-stdlib包。 - 求助需求:我在网上搜了一圈,没找到明确的解决方案,怀疑是不是自己哪里操作出错了,但实在想不出来。有没有正在使用Ubuntu Lunar的朋友能帮忙验证下这个问题是否普遍存在?
万分感谢!
以下是sudo apt-get update的完整错误输出:
Hit:1 http://gb.archive.ubuntu.com/ubuntu lunar InRelease Hit:2 http://gb.archive.ubuntu.com/ubuntu lunar-updates InRelease Hit:3 http://gb.archive.ubuntu.com/ubuntu lunar-backports InRelease Hit:4 http://gb.archive.ubuntu.com/ubuntu lunar-security InRelease Traceback (most recent call last): File "/usr/lib/cnf-update-db", line 9, in <module> from CommandNotFound.db.creator import DbCreator File "/usr/lib/python3/dist-packages/CommandNotFound/db/creator.py", line 7, in <module> import sqlite3 File "/usr/lib/python3.11/sqlite3/__init__.py", line 57, in <module> from sqlite3.dbapi2 import * File "/usr/lib/python3.11/sqlite3/dbapi2.py", line 27, in <module> from _sqlite3 import * ImportError: /usr/lib/python3.11/lib-dynload/_sqlite3.cpython-311-x86_64-linux-gnu.so: undefined symbol: sqlite3_deserialize Reading package lists... Done E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/lib/command-not-found/ -a -e /usr/lib/cnf-update-db; then /usr/lib/cnf-update-db > /dev/null; fi' E: Sub-process returned an error code
备注:内容来源于stack exchange,提问作者mark sabido
相关产品推荐
相关产品推荐

