update a network of ubuntu desktops from a server

I need to update 100+ workstations that run ubuntu.

The problem is that i want them to download the packages from a local server so that they don't use to much internet bandwidth.

I net a kind of caching proxy for this that downloads a specific package only once an than distributes it to all the workstation.


Solution 1:

There are many available tools

  • apt-mirror (howto)
  • apt-proxy (wiki)
  • apt-cacher (howto)
  • approx

You can even simply install a simple cache like squid and simply adjust the maximum_object_size so it will cache larger files like the package updates.

Solution 2:

I recommend approx over the alternatives, as it tends to fail the least.

Solution 3:

I'd recommend apt-cacher, it won't create a full mirror of the entire repository but instead will download and retain anything someone requests though it. It will also stream directly to the first user, so there's no unnecessary wait. It's also a lot more stable than apt-proxy.

Also has a nice web reporting interface so you can check its actually working and how much bandwidth you're saving.