相关疑难解决方法(0)

无法纠正问题,您持有破损的包裹

从 10.04 升级到 12.04 后,我尝试安装不同的软件包。例如 ia32-libs 和 Skype (4.0)。

尝试安装这些时,我收到“无法纠正问题,您保存了损坏的软件包”错误消息。

命令的输出:

sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

运行后:

sudo dpkg --configure -a
foo@foo:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

apt

315
推荐指数
9
解决办法
103万
查看次数

如何强制“已保留的软件包”“自动”安装?

长话短说

最近,在正常的软件升级过程(即,apt upgradeapt dist-upgrade)中,我开始收到如下消息:

[...]
The following packages have been kept back:
  [...]
0 upgraded, 0 newly installed, 0 to remove and [...] not upgraded.

Run Code Online (Sandbox Code Playgroud)

我有什么选择?


注意:这不是此处已经提出的无数类似问题的重复。您应该将我的问题视为此问题的后续问题。

我在我的主 Ubuntu 22.04 系统上遇到了与上面提到的问题完全相同的问题我昨天更换了服务器,尝试手动安装指定的包,不知何故问题得到了解决。今天,当我尝试安装任何新更新时,我收到消息说我有 32 个软件包被保留。

我有一个类似的 22.04 版本(虚拟)Ubuntu 安装,现在已完全更新,并且该问题尚未发生(具有类似的/etc/apt/sources.list文件)。因此,我尝试比较这些软件包。我以主系统中“保留”的包gir1.2-gstreamer-1.0为例并在我的主系统上运行:

$ sudo apt --installed list | grep gir1.2-gstreamer-1.0
[...]
gir1.2-gstreamer-1.0/jammy,now 1.20.1-1 amd64 [installed,upgradable to: 1.20.3-0ubuntu1]
Run Code Online (Sandbox Code Playgroud)

相同的命令给出输出:

gir1.2-gstreamer-1.0/jammy,now 1.20.1-1 amd64 [installed,automatic]
Run Code Online (Sandbox Code Playgroud)

在我的辅助(虚拟)系统上。

为什么我们会有这种差异?而且,如何使我的主系统充当“自动”安装软件包的(虚拟)系统?


我的“主”系统上的命令输出apt-cache policy gir1.2-gstreamer-1.0如下:

gir1.2-gstreamer-1.0: …
Run Code Online (Sandbox Code Playgroud)

updates package-management apt 22.04

66
推荐指数
3
解决办法
4万
查看次数

标签 统计

apt ×2

22.04 ×1

package-management ×1

updates ×1