如何启用“backports”软件源?

如何启用后备存储库以获取更新的软件版本?
3个回答

命令行/服务器指南

默认情况下启用了后向兼容,以下是您可以检查以确保其已打开的方法。

确保后向兼容已启用

要手动启用后向兼容,请确保以下行存在于您的/etc/apt/sources.list文件中:

deb http://archive.ubuntu.com/ubuntu release-backports main restricted universe multiverse  

release 替换为您当前使用的发行版(例如,对于12.04,请使用 precise)。

现在下一步将取决于您是否希望 apt 始终使用 backports 中的软件包,还是仅在手动指定时使用 backports。

始终使用 backports..

Ubuntu 11.04 及更新版本已自动配置为仅在手动指定时使用 backports。如果您希望在安装时始终使用 backports,您需要将以下行添加到 /etc/apt/preferences 中(该文件可能尚不存在;没问题):

Package: *
Pin: release a=<release>-backports
Pin-Priority: 500  

确保您将release替换为当前的版本。

手动使用后备源...

如果您只想在手动指定时安装后备源中的软件包,您需要将以下内容添加到/etc/apt/preferences文件中:

Package: *
Pin: release a=<release>-backports
Pin-Priority: 100  

再次将<release>替换为您当前的版本。

注意:您需要root权限来修改/etc/apt/preferences文件。

从后备源安装...

如果手动配置了后备源,当安装软件包时,您需要在软件包名称的末尾添加/release-backports(将release替换为您当前的版本)。

例如,如果您正在使用12.10 Quantal,并且已经配置了后备源进行手动安装,您可以使用以下命令安装amarok:

sudo apt-get install amarok/quantal-backports  

来源:Ubuntu Backports - Ubuntu Wiki

4sudo add-apt-repository -r "deb http://archive.ubuntu.com/ubuntu $(lsb_release -cs)-backports main restricted universe multiverse " 运行良好。 - Jay _silly_evarlast_ Wren
@Jay_silly_evarlast_Wren 不会 -r 移除它吗? - sehe
是的,抱歉,如果你使用的是xenial版本,请将-r改为-u,或者在之前的ubuntus版本中完全删除它。 - Jay _silly_evarlast_ Wren
不建议将Apt优先级更改为始终使用后备源。根据上面的链接:“后备源团队建议配置软件包管理器仅在明确请求时安装后备软件包”。 - fkraiem

Ubuntu Backports 在 Ubuntu 中默认启用。

如果由于某种原因你仍然无法获取 backports,请使用以下两种方法之一:

  1. 点击启动器上的 Ubuntu 按钮,搜索“软件源”。如果使用 12.04+ 版本,请搜索“软件”。

  2. 按下 ALT+F2,输入:gksu software-properties-gtk

任何一种方式都可以进入软件源管理器软件和更新。在这里,在Ubuntu 软件选项卡和更新选项卡中激活所有四个选项。这将为你的 Ubuntu 版本启用额外功能。

Ubuntu Software Sources - Ubuntu Software Tab

Ubuntu Software Sources - Updates Tab

点击关闭按钮后,它会提示您需要更新因为您所做的更改。请注意,在更新选项卡中,回溯选项是第四个选项。它是那个标有不支持的更新的选项。
要在终端上启用回溯(自Ubuntu 11.10起默认启用)(在您正在处理服务器并且希望启用回溯的情况下)请按照以下步骤操作(此示例使用Ubuntu 13.04):
sudo nano /etc/apt/sources.list

寻找一行有关关键词“backport”的注释行,应该类似于13.04的“raring-backports”,12.04的“precise-backports”等。在这种情况下,它看起来像这样:
  ##deb http://archive.ubuntu.com/ubuntu raring-backports main restricted universe multiverse
  ##deb-src http://archive.ubuntu.com/ubuntu raring-backports main restricted universe multiverse

取消注释这些行,使它们看起来像这样:
  deb http://archive.ubuntu.com/ubuntu raring-backports main restricted universe multiverse
  deb-src http://archive.ubuntu.com/ubuntu raring-backports main restricted universe multiverse

保存文件并运行以下命令以接收后向兼容更新:
sudo apt-get update  
sudo apt-get upgrade

注意 - 如果找不到这些行,请简单地添加它们并根据上述说明更改版本名称。
参考资料

完成这个之后,我不得不告诉apt始终使用backports(正如Seth在答案中指定的那样)。 - thameera

作为超级用户运行:
apt edit-sources

然后取消注释包含“backports”的debdeb-src行。