How to upgrade all 50 Desktops in a network?

How can i upgrade all the 50 desktops to Maverick Meerkat. Is there any netinstall method ?


Solution 1:

You can proxy and cache the packages (as mentioned in Scaine's answer) but in my opinion, this doesn't save you much time, mostly just bandwidth. Of course the upgrades will download faster from a local source but if you still have to toddle from machine to machine... It's a lot of time. Even SSHing in and triggering the upgrade would take a while.

The best tool for the job is probably one of Canonical's paid services: Landscape.

With it you can manage all your computers from a nice central web-based UI. Push packages, updates, reboots, with monitoring.

It's not free but you can get a 30-day trial to see if it fits the bill.

Solution 2:

You can try the tool called cssh. With clusterssh you can ssh all the 50 machines at once and relay your commands to all at the same time. When all ask the same question during the upgrade this can help. If one of them requires special care you can do it by selecting its terminal only and get it to the same state as the others.

This can work perfectly if you do the upgrade with the console application called: aptitude (you have to first edit the sources.list file). If you never tried this I would try somethings easy first with my 50 machines like installing a program first or running simple commands like ls and cd something like that. When you became comfortable with the tool you can do the upgrade.

example use:

cssh root@host1 root@host2 .... root@host50

As the others suggested setting up a proxy can help, but it is not the main issue.

Solution 3:

You might want to consider using Squid-Deb-Proxy : http://popey.com/blog/2010/12/31/caching-ubuntu-package-downloads/

The package unattended upgrades will help keep all your systems up to date (but won't reboot them for kernel issues, so not a complete solution here) sudo apt-get install unattended-upgrades

Finally, of all the full commercial patch managers, to my knowledge, the only two that support linux clients are BigFix and Altiris. As far as know, Ecora doesn't and Shavlick doesn't (despite buying St Bernards some time ago, which did have a rudimentary linux client).

You may also want to consider the free project, Puppet, which allows for multiple seat patching and configuration. Last I looked, the learning curve was a little steep, and some of its functionality is geared towards servers, but it might still be worth a look.