也许是一个简单的问题,也许是一个愚蠢的问题,但我找不到答案......
每当我这样做
apt-get update
apt-get upgrade
我明白了
The following packages have been kept back:
linux-image-amd64
那么,这里到底发生了什么?
答案1
那么,这里到底发生了什么?
不会apt-get upgrade
添加新软件包。linux-image-amd64
是一个元软件包,通常依赖于安装新的软件包,这是内核的最新版本。
每当 ABI 发生变化时,就会使用一个新的包,这对于任何拥有本地编译的模块(不受 DKMS 或类似程序管理)的人来说都非常重要。
参考:https://wiki.debian.org/DebianKernelABIChanges
有时,通常是由于安全问题,内核包会接受更改,从而改变其 ABI。ABI 更改由 linux-image 软件包名称的 ABI 版本部分的变化表示。
无论如何,如果您想升级到最新内核,请使用apt-get dist-upgrade
。
答案2
我只是复制了这个完整的答案,快去看看吧!:
那么,这里到底发生了什么?
如果您安装的某个软件包的依赖项发生了变化,从而必须安装新的软件包才能执行升级,那么该软件包将被列为“保留”。
如何正确安装这些软件包:
sudo apt-get --with-new-pkgs 升级
答案3
这是有道理的:
The apt-get upgrade does not add new packages.
现在,我不知道以下观察的原因:
跑步时不会发生这种情况apt upgrade
;只有使用apt-get upgrade
“”才会发生这种情况。
我读到过,运行apt-get install linux-image-amd64
比更安全dist-upgrade
。对于那些仍在被阻止一些人认为这dist-upgrade
是一个“更激进或更冒险”的解决方案。
显然,在某种意义上,apt
管理和标记包裹的apt-get
方式与 不同。我还没有调查过。
问候