Apt 升级并将所有软件包降级到当前版本

Apt 升级并将所有软件包降级到当前版本

我最近从 Ubuntu 12.04 升级到了 14.04。在使用 12.04 时,我通过 PPA 安装了几个软件包。现在我已经升级到 14.04,我发现 12.04 中的一些 PPA 软件包仍然安装着。所有这些 PPA 存储库都在升级过程中被删除了。

我想卸载 Ubuntu 存储库中存在的任何软件包的 PPA 软件包版本。例如,我有一个 Audacity 的 SVN 版本,它比 Ubuntu 存储库中的版本更新,但我想将其替换为 Ubuntu 存储库版本。

我想对所有 PPA 安装的软件包执行相同的操作。我尝试将其固定在/etc/apt/preferences.d/main

Package: *
Pin: release a=trusty
Pin-Priority: 2001

Package: *
Pin: release a=trusty-updates
Pin-Priority: 2002

Package: *
Pin: release a=trusty-security
Pin-Priority: 2003

然后

apt-get update; apt-get upgrade

不幸的是,它并没有像我希望的那样降级任何软件包。例如,运行apt-cache show catfish显示 Ubuntu 存储库中有版本 1.0.2-2,但我仍然安装了 1.0.82-1~precise~ppa1。

我想将 Ubuntu 存储库中的所有软件包降级到其当前版本。

答案1

我相信你想使用 ppa-purge

sudo ppa-purge ppa:name-of-ppa/to-be-purged

man ppa-purge表示这将“自动将给定 PPA 中的所有包降级回 ubuntu 版本”。

答案2

这无法通过任何自动化方式轻松完成,尤其是当您的 PPA 出现 404 错误时(大多数人都会遇到这种情况)。此外,根据您安装的软件包,完全自动化的降级可能会真正搞砸您的系统。请按照以下步骤手动查找和降级软件包。

  1. Synaptic如果你还没有安装
  2. 打开Synaptic
  3. 点击左侧Installed (local or obsolete)
  4. 在右侧选择要降级的软件包
  5. 从菜单中选择:包 -> 强制版本
  6. 对每个要降级的软件包重复上述步骤

相关内容