我有一个 ubuntu 服务器(版本 18 和 20),想要更新我的机器上除 docker 守护进程之外的所有软件包。
固定 Docker 守护进程版本并运行后apt upgrade
,该服务仍然无法通过在此过程中更新的其他依赖项获得。
在运行更新之前,如何找出哪些软件包导致 docker 守护进程重新启动/不可用?
答案1
不要固定软件包,而是将 docker 软件包置于暂停状态。
sudo apt-mark hold containerd.io docker-ce docker-ce-cli
多年来,我一直在 docker 机器上使用它,没有出现任何问题。当我想进行升级时,我会移除暂挂,升级软件包,然后将其重新设为暂挂。
这还有一个额外的好处,即 apt 会告诉您何时有可用更新但尚未安装。
$ sudo apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
containerd.io docker-ce docker-ce-cli
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.