在基于 redhat 的发行版中,yum 工具有一个 distro-sync 命令,它将包同步到当前存储库。如果基础包已从外部源修改,此命令可用于返回到基础状态。该命令的文档为:
distribution-synchronization 或 distro-sync 将已安装的软件包集与最新可用软件包同步,这可以通过适当淘汰、升级或降级来实现。这“通常”会与升级命令执行相同的操作,但是如果您安装的软件包 FOO 版本为 4,而最新可用版本仅为 3,则此命令会将 FOO 降级为版本 3。
在 Ubuntu 中是否有等效的操作?
答案1
我认为你可以通过添加一个来做到这一点/etc/apt/首选项 将所有软件包固定到 repo 代表的发行版/版本。下次运行 apt-get upgrade 时,它将根据需要降级以满足指定的规则。请参阅apt_preferences 命令了解详情。
http://wiki.debian.org/AptPreferences
这样做的另一方面是从一开始就防止这种情况发生,方法是固定那些与你保持稳定有关的软件包。因此,如果它们被更新外部来源,下一次 apt-get upgrade 将只恢复该版本,而不是整个操作系统。
答案2
不,据我所知,apt 包系统中没有这样的命令。
命令类似,但它不会降级软件包。该命令可以降级软件包,如下dist-upgrade
所示apt-get
install
sudo apt-get install "package"="version"
但正如您所见,您应该明确给出所需的版本号,您可以从中检索
apt-cache policy "package"