问题:
我需要一种方法来在我的 Debian 系统上安装某些软件包的特定固定版本。snapshot.debian.org似乎提供了一种方法来执行此操作,但是即使在向我的 apt-sources 添加快照后,我也无法apt-get install
在该快照存档中使用某些特定版本的软件包。
问题:
从 Debian 快照存档安装特定软件包版本的官方或“正确”方式是什么?
背景和我尝试过的:
让我们使用 Debian8 Jessie 和 3.16.x 内核二进制文件作为我们的示例。在撰写本文时,Jessie 发布的内核是 3.16.43-2+deb8u5。说我要安装 3.16.43-2+deb8u4。
我首先在 debian 快照档案中搜索我想要的版本 ( http://snapshot.debian.org/binary/linux-image-3.16.0-4-amd64/ ),然后单击我想要的内核的确切版本我正在寻找,这让我进入http://snapshot.debian.org/package/linux/3.16.43-2%2Bdeb8u4/#linux-image-3.16.0-4-amd64_3.16.43-2:2b: deb8u4
从那里,我可以看到该软件包是“在 2017-09-20 22:12:21 上看到的 debian-security”和“在 2017-10-08 16:31:52 上看到的 debian”。我决定使用前者并选择 debian-security snapshot 20170920T221221Z。
按照snapshot.debian.org首页上的说明,我将以下内容添加到我的 /etc/apt/sources.list 中:
deb http://snapshot.debian.org/archive/debian-security/20170920T221221Z/ jessie/updates main
deb src http://snapshot.debian.org/archive/debian-security/20170920T221221Z/ jessie/updates main
Run Code Online (Sandbox Code Playgroud)
然后我运行apt-get -o Acquire::Check-Valid-Until=false update
并看到更新(似乎)成功完成。
我认为这将允许我现在安装所需版本的内核,但 apt 只知道两个安装候选,3.16.43-2+deb8u2 和 3.16.43-2+deb8u5。没有 +deb8u4 的迹象:
# apt-cache madison linux-image-3.16.0-4-amd64
linux-image-3.16.0-4-amd64 | 3.16.43-2+deb8u5 …
Run Code Online (Sandbox Code Playgroud)