假设我有3台运行Debiantesting的计算机。 他们大多具有相同的configuration,大部分安装的软件包是相同的。
每次我更新/升级Debian软件包时,都会从互联网上下载。
有没有办法从互联网上预先获取Debian软件包,并有一个本地的,最新的Debian存储库, 只包含我已经安装了可用更新的软件包?
所以,通常情况下,如果我安装了vim并且发布了更新,我的服务器就会从本地获取.deb文件,我可以从局域网升级所有的机器。 如果我想安装emacs,那么本地存储库不会有它,它会从互联网下载。
人们可以把它称为本地caching系统,就像Squid做httpcaching一样。
谢谢!
看来你正在寻找apt-cacher 。 要安装它,只需键入:
$ sudo apt-get install apt-cacher
然后你可以通过创build一个带有内容的文件/etc/apt/apt.conf.d/01proxy来configurationapt-get来使用它作为代理:
Acquire::http::Proxy "http://cacher_ip:3142/";
说实话,我在Ubuntu上使用这个configuration,但它应该在debian上类似。 这样所有的软件包下载将从服务器“cacher_ip”上的apt-cacher请求。 如果存在,它将在本地获取。 否则,将通过cacher进行下载。
鱿鱼代理实际上做了很好的“开箱即用”cachingapt-get下载以及更多。 经过一些调整,它会做得更好。
请参阅: http : //itkia.com/using-squid-to-cache-apt-updates-for-debian-and-ubuntu/
Apt-cacher-ng不能确切地知道每个用户有什么可用的更新,因为客户端可以在不通知服务器的情况下卸载软件包(显然),或者有时将软件包重命名或拆分成多个软件包。 有太多的因素。 如果您可以忽略大部分,并且想要预先caching每个通过名称(以前下载的软件包)select的软件包,请查看https://www.unix-ag.uni-kl.de/~bloch/acng /html/howtos.html#mirroring