我的任务是更新 Ubuntu Server Trusty Tahr 安装上的软件包。特别是 rfc5766-turn-server,它在 Trusty 上确实很旧。
https://launchpad.net/ubuntu/+source/rfc5766-turn-server
如您所见,Trusty 的最新软件包是 3.2.3.1-1,而 Utopic Unicorn 的最新软件包是 3.2.4.1-1。
是否可以使用 apt 只更新这个单个包?这是一个专用的回合服务器,因此我不想下载源代码和所有构建工具。
答案1
您只需下载.deb
并使用 进行安装即可dpkg -i file.deb
。但是,这将是一次性安装,作为正常apt-get update && apt-get upgrade
过程的一部分,您将不会获得此软件包的更新。如果你想获得它们,你必须将 Utopic 存储库添加到你的存储库中sources.list
,并使用/etc/apt/preferences
它来指示它们应该仅用于此包,例如
Package: *
Pin: release n=trusty
Pin-Priority: 501
Package: rfc5766-turn-server
Pin: release n=utopic
Pin-Priority: 502
有关其工作原理的详细信息,请参阅man apt_preferences
参考资料,但基本上是: Apt 始终安装具有最高优先级的软件包;仅当多个软件包具有最高优先级时(然后安装版本号最高的软件包),版本号才用作决定因素。默认情况下,所有软件包的优先级均为 500,因此,如果您的 中同时拥有 Trusty 和 Utopic 存储库sources.list
,则将安装 Utopic 版本,因为它们具有更高的版本号。我们首先为所有 Trusty 软件包分配优先级 501,因此它们不会升级到 Utopic,因为它们具有更高的优先级。然后我们将优先级 502 分配给来自 Utopic 的包rfc5766-turn-server
,以便它比 Trusty 版本优先(当然我们也可以将优先级 501 分配给它......)。