在进行了一些软件包安装后,该desktop-file-utils
软件包现在无法通过apt
和安装aptitude
。这是为了Xubuntu 20.04.2
.
运行时apt
,我现在总是收到此错误:
dpkg: error processing package desktop-file-utils (--configure):
installed desktop-file-utils package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
desktop-file-utils
我知道我可以清除这个包,但是它的很多依赖项也将被卸载,我的系统很可能变得无法使用。
我不明白是什么导致了这个问题,因为我不知道我可以做些什么来影响这个包。
desktop-file-utils
除了清除并使我的系统无法使用之外,还有其他方法可以解决此问题吗?另外,有什么方法可以让我获得有关安装后脚本究竟是如何失败的更详细信息?如果是这样,也许我可以调试它。
提前感谢您的任何建议。
让我们一步一步地修复这个错误。
首先,运行 force install 以了解确切的问题:
识别错误:
将依赖项标记为手动安装,以防止它们被删除;
删除安装后文件:
清除包装:
重新安装软件包(可选):
解释
正如错误消息所述:
这通常意味着安装后文件中存在暂时性问题。
在第一步中,我们执行了一个试图纠正错误的命令。
在第三步中,我们删除了包的安装后文件。
我们在第四步中清除了包以删除所有配置文件。
在第五步中,我们重新安装了软件包以确保它不会破坏任何其他软件包。
事实证明,这与软件包无关,也与
apt
系统无关。我发现我不小心设置
XDG_DATA_DIRS
为指向一个不存在的目录。一旦我解决了这个问题,问题就消失了。
以下是有关为什么这解决了问题的更多详细信息...
这些是
/var/lib/dpkg/info/desktop-file-utils.postinst
...的内容我
update-desktop-database -q
从命令行运行,它没有给出任何输出,但它以非零返回码退出。我像这样再次运行它:
update-desktop-database -v
. 这一次,它给出了一条错误消息,指出其中applications
包含的路径的子目录XDG_DATA_DIRS
不存在。这表明我设置XDG_DATA_DIRS
不正确。一旦我重置
XDG_DATA_DIRS
为适当的值,update-desktop-database
命令开始以零返回码退出,并且我上面提到的desktop-file-utils
错误apt
停止发生。