apt-get upgrade更新时忽略指定包

当使用 apt-get 命令时,默认会将所有需要更新的包都下载更新,但是我的 docker-ce 指向的是官方的源,速度非常慢,而且我并没有更新它的需求,这个时候就需要在更新的时候将 docker-ce 排除掉。

apt-mark hold xxx

使用这个命令可以将指定的包的版本hold住,这样在更新的时候就会忽略掉这个包。

apt-mark unhold xxx

将 hold 替换为 unhold 就可以取消对这个包版本的锁定了。

apt-get update 和 upgrade 的区别

update

update 是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。

upgrade

upgrade 是升级已安装的所有软件包,升级之后的版本就是本地索引里的,因此,在执行 upgrade 之前一定要执行 update, 这样才能是最新的。
An update should always be performed before an upgrade or dist-upgrade.
upgrade is used to install the newest versions of all packages currently installed on the system from the sources enumerated in /etc/apt/sources.list. Packages currently installed with new versions available are retrieved and upgraded.