为较旧的 Ubuntu 版本配置缓存服务器

为较旧的 Ubuntu 版本配置缓存服务器

我们有ubuntu 10.04ubuntu 10.10操作系统。但是我们的软件只能在这些版本上运行。我们在使用的新版本 12.04 (LTS) 中遇到了一些问题。但暂时我们需要设置一个缓存服务器来安装这些版本中的基本软件包,如 samba、thunderbird、ssh 和插件等。有什么可能吗?

  • 我已经知道这些版本已停止支持。但我们只喜欢这些版本,因为它有一个经典的 gnome。
  • 我们正在升级我们的软件,因此我们需要一个临时的解决方案。
  • 想过设置apt-mirror,但是它消耗更多的带宽,每次发布都需要下载85GB的数据,这相当困难而且需要花费很多时间。
  • 希望有更好的技巧来完成这项任务。

更新:

  • 有没有办法用所需的软件包设置 apt-mirror??而不是下载整个镜像?我们只需要 samba、ssh、thunderbird、flashplugin-installer 和所有附加插件。要安装这些软件包,为每个发行版设置 85 GB 的完整镜像真的很浪费。

  • 我们已经在使用 apt-cacher-ng 服务器。我可以安装软件包,ubuntu 10.04但安装软件包时ubuntu 10.10会抛出 404 错误。有什么办法可以解决这个问题吗?

答案1

在我们公司我们使用apt-cacher-ng结果非常成功。借助此软件,我们可以将更新分发到大约 100 台运行不同版本 Ubuntu Linux 的 PC,而不会造成不必要的带宽浪费。

该软件还提供统计数据,您可以看到节省的带宽

该软件还提供统计数据,您可以查看节省的带宽量

答案2

您可以使用 squid deb 代理执行此操作:

然后在客户端上您可以将其 sources.list 更改为 old-releases.ubuntu.com:

然后,您将在本地拥有较旧的 deb 的缓存。

答案3

我建议使用squid-deb-proxy。它只是一个预配置的 Squid 代理,能够高效地缓存来自 Debian/Ubuntu 存储库的软件包。您也可以使用它来使用 Squid 的所有功能。

对于 Squid-deb-proxy,只需安装包squid-deb-proxy并在 中的新文件中添加允许的目标域/etc/squid-deb-proxy/mirror-dstdomain.acl.d。常规官方 Ubuntu 镜像已为您添加(例如*.archive.ubuntu.com)。默认情况下,它将在端口 8000 上运行 HTTP 代理。

作为奖励,客户可以自动发现本地网络中启用缓存的机器squid-deb-proxy-client软件包已安装。如果您希望手动配置,请自行配置 APT,例如/etc/apt/apt.conf.d/10proxy

Acquire::http::Proxy "http://my.proxy.machine:8000/";

要添加对旧版本的支持,请执行以下操作:

  1. 创建一个仅包含此行的文件/etc/squid-deb-proxy/mirror-dstdomain.acl.d/20-old-releases

    old-releases.ubuntu.com
    
  2. 重新启动代理:sudo service squid-deb-proxy restart

相关内容