个人工具

AptProxyCache

来自Ubuntu中文

跳转至: 导航, 搜索
* Launchpad 词条: apt-proxy-cache
  • 创建: 2009-03-28 by Jaime Frutos Morales
  • 贡献人:
  • 受影响的包: 被代理缓存选择了的包

摘要

当同一个网络中的 Ubuntu 机器在部署、更新或安装包时,包含一个APT代理缓存主库和记录它的安装和配置,可以减少所消耗的时间和带宽。

版本注释

Ubuntu 服务器可以充当一个 apt 代理缓存,但默认是没有激活的。当一个网络中的 Ubuntu 机器在安装或更新时它可以减少所消耗带宽和时间。

理由

在一个网络中每台 Ubuntu 机器都通过 Internet 去下载相同的包和更新是浪费带宽和时间的。选择一个恰当的建立在 Ubuntu 服务器上的 apt 代理缓存可以解决这个问题。这个代理缓存须包含主库和记录它的安装和配置。

使用实例

Alan 管理着一个有一些 Ubuntu 机器的网络,需要仅下载一次包和更新,并且这些包和更新可以让全部机器获取到。 Betty 每天都要部署许多 Ubuntu 机器。她想用无人值守安装的方式直接通过她网络上的一台 Ubuntu 服务器去获取包和更新。 Chuck 在家有一些 Ubuntu 机器,他不想每台机器都是用有限的带宽去下载包和更新。

设计

办法 1: 使用 apt-cacher-ng

信息:

优点:

  • 可以导入到缓存中已有的包文件。
  • 网络前端看到统计报告和设置不同的功能。

缺点:

  • 需要在客户端进行设置。 (改变镜像访问的 URLs 或 APT's HTTP 代理设置)

办法 2: 使用 apt-cacher

信息:

  • 在 Jaunty 中包的版本: 1.6.7
  • 网站:
  • 最新版本: 1.6.7
  • 许可: GPL

优点:

  • 可以导入到缓存中已有的包文件。

缺点:

  • 需要在客户端进行设置。 (改变镜像访问的 URLs 或 APT's HTTP 代理设置)

办法 3: 使用 apt-proxy

信息:

优点:

  • 可以导入到缓存中已有的包文件。

缺点:

  • 需要在客户端进行设置。 (改变镜像访问的 URLs 或 APT's HTTP 代理设置)

办法 4: 使用 approx

信息:

优点:

  • 在服务器改变仓库对客户端来说是透明的。

缺点:

  • 需要在客户端进行设置。 (改变镜像访问的 URLs 或 APT's HTTP 代理设置)

目标

  • 选择一个代理缓存,并让它包含主库。
  • 包括如何配置 Ubuntu 服务器指南。

执行

对象

Jaunty+1

在这个版本发布时完成所有目标。

测试计划

  • 一旦选择的包是在主库中,那么可以在一些 Ubuntu 机器的真实环境中测试。
  • 在无人值守安装的情况下尝试使用它。

BoF agenda and discussion

Apt-cacher 的体会

以下是我使用 apt-cacher 的经验。应用于其他包缓存的建议:

  • 与 Debian 包冲突 - Ubuntu 重建但是没有重命名一些包。当第一种系统(ubuntu)利用 apt-cacher 去获取保留在缓存中的包,那么其他系统(debian)再获取的话就会出现问题。解决方法: 让 Ubuntu 重命名每一个它建立的包 / 不允许 debian 系统访问缓存。
  • 客户端配置 - 每一台本地机器都需要在 sources.list 的 URLs 添加一个 URL 前缀。方法(1): 修改 apt 让 debconf 参数 (sourceprefix?) 给全部 URLs 添加一个前缀。方法(2): 修改 apt-cacher 让它允许使用 http 代理和利用这个代理选项去令 apt 向 ubuntu 服务器的请求进行重定向。(在 apt 中的代理选项是一个 debconf 变量)

(译者注:翻译得不好,希望有人能完善。)