我在使用 Lubuntu 18.04 时遇到了软件包问题python-debian
,于是我重新安装了它。之后我收到很多:
dpkg:警告:缺少软件包‘PACKAGE’的文件列表文件;假设软件包当前未安装任何文件
我用 重新安装了很多apt-get install --reinstall PACKAGE1 PACKAGE2 etc
,但有一堆我无法重新安装:
无法重新安装 PACKAGE,无法下载。
我认为这是因为这些软件包太旧了,或者手动从源代码安装(如llvm-10
)。这些软件包无论如何都已安装并正常运行。
我怎样才能摆脱这些烦人的警告?
编辑
现在,GChuf 的回答有效,但我仍然有这些软件包的警告:
libarchive13:amd64
libnm0:amd64
python3-zope.interface
network-manager
它们依赖于我没有勇气传递给的包dpkg -r
答案1
总结
dpkg -r PACKAGE1 PACKAGE2 PACKAGE3 ...
简短解释:
dpkg -r
删除已安装的包而不删除配置文件。
在这种情况下,dpkg -r 没有执行真正的“卸载”,因为软件包不是通过 dpkg 或 apt 安装的。
它只是删除了 Marco 电脑上的一些剩余文件或条目 - 除了“/var/lib/dpkg/info”之外,我无法找到这些条目可以存储在何处的信息。
可能还有其他的解释,而且我不知道这种情况到底是如何发生的。
不确定这些是否有帮助,但值得一试。
检查 dpkg 是否看到包:
dpkg -l '*python3.5*'
删除标记:
dpkg-remove PACKAGE_NAME
apt-update
通过 dpkg 删除或清除:
dpkg -r python3.5
dpkg -P python3.5
仔细检查 /var/lib/dpkg/info 中是否有任何文件
ls -al /var/lib/dpkg/info/ | grep python3
通过 apt-get 清理软件包:
sudo apt-get autoclean
sudo apt-get autoremove
sudo apt-get clean
我也遇到过这个 bash 脚本: https://github.com/epinna/Unusedpkg
如果发生任何事情,请随后重新启动电脑。
编辑
apt
我可以在 ubuntu 20 上找到所有这 4 个软件包:
libarchive13:amd64
libnm0:amd64
python3-zope.interface
network-manager
我建议您尝试重新安装这 4 个。
答案2
尝试使用命令清理 dpkg 包列表缓存:
sudo dpkg --clear-avail
sudo apt-get update
如果警告信息仍然存在,请尝试像这样手动删除包的文件列表:
sudo rm /var/lib/dpkg/info/<PACKAGE>.list