用户经常询问在哪里可以找到 apt.postgresql.org 的旧版本软件包。我从 2013 年 4 月左右开始收集这些软件包,并在 2016 年 7 月通过仓库主机的临时 URL 提供了这些软件包,称为“停尸房”。当时的仓库结构非常简陋,所有属于一个源代码包的文件都被塞进了一个目录,而不关心它们属于哪个发行版。这不仅不方便用户访问,而且主要问题是仓库主机对磁盘空间的需求日益增长。目前,我们的归档文件已经有 175 GB,其中 152 GB 是“停尸房”占用的。
我们的朋友 yum.postgresql.org 早在一段时间前就已经有了专门的归档主机 (yum-archive.postgresql.org),所以是时候为 apt.postgresql.org 效仿并实现一个可以通过 apt 使用的专用归档了。
所以,来了:apt-archive.postgresql.org
该归档涵盖了所有过去和现在的 Debian 和 Ubuntu 发行版。apt sources.lists 条目与主仓库相似,只是在主机名后附加了“-archive”,并且 发行版 也一样。
deb https://apt-archive.postgresql.org/pub/repos/apt DIST-pgdg-archive main
deb-src https://apt-archive.postgresql.org/pub/repos/apt DIST-pgdg-archive main
其中涵盖的最旧的 PostgreSQL 服务器版本有 8.2.23、8.3.23、8.4.17、9.0.13、9.1.9、9.2.4、9.3beta1,以及所有更新的版本。
一些例子
$ apt-cache policy postgresql-12
postgresql-12:
Installed: 12.2-2.pgdg+1+b1
Candidate: 12.2-2.pgdg+1+b1
Version table:
*** 12.2-2.pgdg+1+b1 500
500 http://apt.postgresql.org/pub/repos/apt sid-pgdg/main amd64 Packages
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
100 /var/lib/dpkg/status
12.2-2.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12.2-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12.1-2.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12.1-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12.0-2.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12.0-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12~rc1-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12~beta4-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12~beta3-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12~beta2-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
12~beta1-1.pgdg+1 500
500 https://apt-archive.postgresql.org/pub/repos/apt sid-pgdg-archive/main amd64 Packages
由于这是托管在 S3 上的,目录浏览只能通过静态 index.html 文件间接支持,所以如果您想查看某个特定 URL,请在其后附加 "/index.html" 即可查看。
该归档由一个 PostgreSQL 数据库 和 一堆 Python/shell 脚本 提供支持,apt 索引文件就是从这些脚本中生成的。
我也借此机会将一些早已停用的发行版从主仓库主机中移除。以下发行版已迁移
它们可以从归档中以“DIST-pgdg”的形式获取,例如 squeeze
deb https://apt-archive.postgresql.org/pub/repos/apt squeeze-pgdg main
deb-src https://apt-archive.postgresql.org/pub/repos/apt squeeze-pgdg main