如何撤销‘建议’的渠道包升级?

如何撤销‘建议’的渠道包升级?

我有一个带有 GNOME 3.18 64 位 VM 的 Ubuntu GNOME 16.04,并且在该 VM 中,我需要在渠道中测试某些东西,xenial-proposed因此我在中激活了它software-properties-gtk,运行sudo apt-get update && sudo apt-get dist-upgrade并安装了来自该渠道的所有升级xenial-proposed,因为我找不到获取它的方法只是为了升级我需要的软件包。

但是现在我希望将所有升级到其xenial-proposed版本的软件包降级到稳定/正常渠道中的版本,但如何实现呢?我可以用它吗ppa-purge?如果可以,怎么做?

如果我xenial-proposed通过与启用该频道相同的方式禁用该频道,那么xenial-proposed一旦版本号高于安装的版本,已安装并升级到其版本的软件包是否会再次从稳定/正常频道接收更新,或者我根本不会收到更新,直到我xenial-proposed再次启用该频道?

答案1

适应http://www.webupd8.org/2013/11/how-to-downgrade-proposed-repository.htmlhttps://wiki.ubuntu.com/Testing/EnableProposedxenial-proposed,可以通过执行以下操作来降级从存储库安装的软件包(替换xenial为您所使用的版本的代号):

  1. 按照您的建议禁用xenial-proposed存储库。software-properties-gtk
  2. 在 中/etc/apt/preferences.d,创建一个名为 的文件99-downgrade-proposed
  3. 将以下行复制并粘贴到文件中:

    Package: *
    Pin: release a=xenial
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=xenial-updates
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=xenial-security
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=xenial-backports
    Pin-Priority: 1001
    
    Package: *
    Pin: release a=xenial-proposed
    Pin-Priority: -1
    
  4. 运行sudo apt update然后接着sudo apt full-upgrade

  5. 通过运行删除该文件sudo rm /etc/apt/preferences.d/99-downgrade-proposed

答案2

  1. 保存当前安装的软件包列表建议的套房:

    aptitude -F '%p' search "?narrow(?installed, ?archive($(lsb_release -sc)-proposed))" > /path/to/proposed-packages.txt
    

    注意力:确保生成的文件大小(以字节为单位)远低于 128 KiB,否则您可能会在步骤 4 中遇到问题。

  2. 禁用建议的存储库套件。如果你不知道如何操作,请参阅我如何添加“建议的”存储库?并做相反的操作。

  3. 更新本地包索引:

    sudo apt-get update
    
  4. 将步骤 1 中的列表中的所有软件包强制转换为当前版本的最新已知版本:

    xargs -x -r -d '\n' -a /path/to/proposed-packages.txt -- sudo apt-get install -f -t "$(lsb_release -sc)" --
    

    删除存储库后建议的套件和软件包索引更新最新的已知软件包版本将来自更新安全,或者您的版本的“裸”套件,具体取决于您启用的其他套件以及它们包含的内容。

PS:以上说明与删除向后移植套件并降级其所有已安装的软件包。只需替换建议的向后移植

相关内容