我是凯斯西储大学的学生,从Ubuntu服务器到我所在位置的带宽通常非常糟糕(每秒几百个字节)。我本人和一些朋友希望能够一次下载软件包,并将其缓存到校园中其余的Ubuntu安装中。为此,我们要么需要设置我们自己的APT存储库,要么需要设置某种形式的缓存(squid?)服务器来指向我们的系统。
建立这样一个镜像是一个困难的过程吗?一个人将如何实现呢?
我是凯斯西储大学的学生,从Ubuntu服务器到我所在位置的带宽通常非常糟糕(每秒几百个字节)。我本人和一些朋友希望能够一次下载软件包,并将其缓存到校园中其余的Ubuntu安装中。为此,我们要么需要设置我们自己的APT存储库,要么需要设置某种形式的缓存(squid?)服务器来指向我们的系统。
建立这样一个镜像是一个困难的过程吗?一个人将如何实现呢?
Answers:
您可能要使用apt-proxy而不是完整的镜像,因为这样将花费更少的空间和时间来进行设置:
https://help.ubuntu.com/community/AptProxy
然后,您需要为任何想要使用代理的人更新存储库列表。
有几种方法可以镜像存储库或缓存软件包下载。最佳的解决方案取决于要使用多少人以及已有的基础架构。
例如,许多大学已经有本地软件镜像,在这种情况下,最简单的解决方案可能是将Ubuntu添加到该镜像中。;)
并且,如果您的大学已经有一个代理服务器,则可以使用它(也许使用一些自定义的存储库设置?)。
当你想全部或官方源(和/或其他信息库)的某些部分镜子,你可以使用像apt-mirror
,debmirror
,debpartial-mirror
,mirrorkit
或ubumirror
。镜像整个存储库可能会引入很多没人使用过的软件包,因此,如果带宽确实是一个问题(即使在晚上),则仅镜像流行的软件包可能很有用...
当您只想缓存使用过的软件包时,可以使用apt-cacher
,apt-cacher-ng
或apt-p2p
或Squid之类的代理。
拥有本地镜像(与高速缓存相比)的一个优点是,安装/升级总是很快(对于镜像上可用的软件包),而使用高速缓存时,需要软件包的第一个人必须等待下载。您还可以将镜像配置为在晚上更新,以便在几乎没有其他人使用Internet上行链路时进行下载程序包。
OTOH使用缓存的优势在于,您将只下载所需的确切软件包,而不会下载更多软件包。