有没有办法使用 apt 从特定存储库安装包?

有没有办法使用 apt 从特定存储库安装包?

有时我想要的 PPA 软件包与另一个存储库中的其他软件包同名。有什么方法可以告诉我从哪个存储库apt下载软件包吗?packageName

我更愿意只使用apt,但我想aptitude或者其他工具也可以。越简单越好。

答案1

有两种方法:

  1. 固定-> 这更像是一个永久性的解决方案,您可以将其重新混合成某种临时方案,并在最后详细说明。
  2. 使用 aweso......呃,能力!

使用 aptitude

假设软件包来自某个来源,我们称之为ppa.launchpad.net。那么,如何告诉 aptitude 从该来源安装软件包:

sudo aptitude install '?narrow(nameofthepackage, ?origin(ppa.launchpad.net))'

您可以更改narrowand。此外,您还可以使用其他选择器,如版本字符串等。

有关 aptitude 的所有功能的完整参考资料在这里:


使用固定。

这要求您事先编写首选项文件,并且应该添加漂亮的选项参数:

您必须编写您的固定文件:

Package: somepackage
Pin: origin ppa.launchpad.net
Pin-Priority: 1000

现在使用 apt-get:

sudo apt-get install -o Dir::Etc::Preferences=/path/to/pinningFile somepackage

完毕。

相关内容