我想使用 Natty Narwhal 存储库来存放 Puppet 包,但我不想升级整个服务器。可以吗?
我当前的解决方案是手动获取 .deb 包
答案1
固定是一种高级软件包管理技术,可让您在获取较新版本的软件包的同时保持稳定版本。不支持混合存储库,如果您想要的软件包是针对与系统上不同的库版本编译的,则可能会给您带来麻烦。如果可能,您应该尝试从向后移植存储库(或者可能是受良好支持的 PPA)。也就是说,您似乎已经知道puppet
Natty 在您的系统上运行良好。
为了固定puppet
到 natty 版本,我们必须编辑几个文件。首先,您需要设置您的默认版本/etc/apt/apt.conf.d/01ubuntu
(我假设您使用的是 lucid,显然要替换实际版本):
APT
{
Default-Release "lucid";
};
接下来,您需要将 natty 添加到您的文件中或使用以下源/etc/apt/sources.list
创建一个新文件:/etc/apt/sources.list.d/natty.sources.list
deb http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
然后,您需要将 Natty 软件包的“Pin-Priority”设置为puppet
高于默认版本的优先级。在 设置默认版本/etc/apt/apt.conf.d/01ubuntu
实际上会将源自该版本的所有软件包的优先级设置为 990。因此,在 中,/etc/apt/preferences
我们需要使用更高的优先级覆盖此优先级,puppet
例如:
Package: puppet
Pin: release n=natty
Pin-Priority: 995
现在你只需要运行apt-get update && apt-get upgrade