Xubuntu:“desktop-file-utils”无法安装

Xubuntu:“desktop-file-utils”无法安装

在安装了一些软件包之后,现在无法通过和desktop-file-utils安装软件包。这是针对 的。aptaptitudeXubuntu 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并使我的系统无法使用之外,还有其他方法可以修复此问题吗?另外,是否有办法让我获得有关安装后脚本失败的更多详细信息?如果是这样,也许我可以调试它。

提前感谢您的任何建议。

答案1

让我们一步一步地修复这个错误。

  1. 首先,运行强制安装以了解具体问题:

    sudo apt --fix-broken install
    
  2. 识别错误:

    Errors were encountered while processing:
    desktop-file-utils
    
  3. 将依赖项标记为手动安装以防止它们被删除;

     sudo apt-mark manual libglib2.0-0 libc6
    
  4. 删除安装后文件:

    sudo mv /var/lib/dpkg/info/desktop-file-utils* ~/
    
  5. 清除包:

    sudo dpkg -P --force-all desktop-file-utils
    
  6. 重新安装包(可选):

    sudo aptitude -f install desktop-file-utils
    

解释

正如错误信息所述:

installed desktop-file-utils package post-installation script subprocess returned error exit status 1

这通常意味着安装后文件中存在暂时性问题。

  • 第一步,我们执行了一条试图纠正错误的命令。

  • 在第三步中,我们删除了包的安装后文件。

  • 我们在第四步中清除了包以删除所有配置文件。

  • 在第五步中,我们重新安装了该软件包以确保它不会破坏任何其他软件包。

答案2

事实证明,这与包裹和系统无关apt

我发现我错误地设置了XDG_DATA_DIRS指向一个不存在的目录。

一旦我解决了这个问题,问题就消失了。

以下是关于为什么可以解决这个问题的更多详细信息...

/var/lib/dpkg/info/desktop-file-utils.postinst这些是...的内容

#!/bin/sh

set -e

update-desktop-database -q

if [ "$1" = "triggered" ]; then
    exit 0
fi

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

相关内容