I am considering trying to build a portable IT system to support Job Clubs here in the UK (operating as a charitable enterprise), but have a couple of hurdles to overcome. The solution I have in mind will incorporate up to 10 laptops sharing a common router, portable server and other network facilities like printer, etc.

Firstly, I have avoided using Windows because of the excessively large number of updates, extra security software required to keep it stable and malware-free as well as the high cost of support and maintenance needed. I like Mac OS X as it is rock-solid stable, updates are automatic, not too frequent and not too large, but the hardware carries a high premium. I have played with a couple of variants of Linux, but found that some require regular manual updates every week, which makes support a pain.

Q1. Can Ubuntu be configured for automatic updates for all its software, so that it is completely transparent to the end-user? I basically do not want the end-users fiddling with Ubuntu or any of its applications at all, but at the same time need it to keep itself up to date as far as is possible with minimal intervention.

Secondly, I have limited bandwidth in some places the system will be used at (e.g. where no landline-based broadband is available) and it will have to run over a 3G wireless internet connection. In this situation I do not want updates to run as bandwidth is precious. Also, even when on the main base-site which has fixed-line broadband, updates for 10 machines will consume a lot of bandwidth.

I know that if I were to implement a solution based on Mac OS X, the OS X server can be configured to act as a local update cache server. E.g. each of the client laptops would pull their updates from the local LAN server rather than Apple's main update server. Thus update-related bandwidth would be reduced to 10% of what it would be without the update server on the LAN.

Q2 - does Ubuntu have the ability to time when updates are done (e.g. delay an update until it is at a high-bandwidth site?)

Q3 - does Ubuntu have the ability to use a local LAN-based server as an Update Cache instead of having to pull updates across from Ubuntu's main repositories?

  • Can you split this up into separate questions? Some of these have been asked before and the system works best when there's one question per post. – Jorge Castro Dec 20 '11 at 17:32

Q1 and Q2

The way I know to do this would be to use cron to run a script you write that will check whether the desired conditions exist and then run an appropriate update command such as this (you might need to tweak the command):

apt-get update
apt-get upgrade -y

There are some scenarios that this might not handle, but with some tweaking and a bit of scripting, you could probably get things working nicely. But you'll probably want to remove update-manager or otherwise disable updates from the graphical environment to prevent a user-visible popup.


Back in the day, I used a program called apt-cacher-ng that served as a caching proxy server for updates and saved me on bandwidth. I don't know its current state, but at the time, it worked perfectly for everything except upgrades from one Ubuntu version to the next--the Ubuntu upgrade tool didn't respect the proxy settings.

  • Ubuntu can be configured to automatically install security updates in the background and without asking, but not all updates, as far as I know, and you don't get to choose when or where. The cron solution would allow you to do all that, but requires some Linux scripting experience. :( – ams Dec 20 '11 at 21:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.