文章内容

2021/8/23 17:53:06,作 者: 黄兵

Ubuntu The following packages have been kept back

今天在对 Ubuntu 升级的时候具体执行命令如下:

$ apt-get update && apt-get upgrade
...
The following packages have been kept back:
base-files fwupd fwupd-signed libfwupd2 libfwupdplugin1 linux-aws
linux-headers-aws linux-image-aws sosreport ubuntu-advantage-tools
ubuntu-server
0 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.ch

出现问题的原因:

如果您安装的其中一个软件包的依赖关系发生了变化,因此必须安装新软件包才能执行升级,那么该软件包将被列为“保留”。

解决方案:

方案一:

您可以运行sudo apt-get --with-new-pkgs upgrade,它将安装保留的软件包。

这样做的好处是不会将保留的软件包标记为“手动安装”,这可能会迫使更多的用户干预。

方案二:

谨慎的解决方案是运行sudo apt-get install <list of packages kept back>. 在大多数情况下,这将为保留的软件包提供成功升级所需的东西。

方案三:

一个更积极的解决方案是运行sudo apt-get dist-upgrade,这将强制安装这些新的依赖项。

但dist-upgrade 可能相当危险与升级不同,它可能会删除包以解决复杂的依赖情况。与您不同,APT 并不总是足够聪明,无法知道这些添加和删除是否会造成严重破坏。

因此,如果您发现自己处于“谨慎解决方案”不起作用的地方,dist-upgrade 可能会起作用……但您最好多了解一点 APT 并通过安装和删除“手动”解决依赖问题根据具体情况打包。


参考资料:

1、“The following packages have been kept back:” Why and how do I solve it?


其他相关推荐:

1、给 Ubuntu 软件升级命令

2、Linux Systemd 查看日志

3、Ubuntu 20.04 上设置静态 IP 地址

4、Linux 防火墙如何屏蔽 IP 地址段

5、Linux 查看日志的6种方法

什么是 IOPS
mysql远程连接命令
分享到:

发表评论

评论列表