Anyone who's ever run a production server knows that our users appear to never sleep. Just when you think it's late enough at night that no one will be working, you get a call asking why the server is down.
One way to minimize downtime is to have all of the update packages downloaded prior to taking the server offline to run the update. Each family of Linux has its own package manager and method to download, but not install, updates.
RedHat/CentOS family:
# up2date -u -d
Note: if you use yum it takes a little more work because you'll have to install a plugin first.
Debian/Ubuntu family:
# sudo apt-get update
# sudo apt-get -d upgrade
When it's time to actually install the packages you can just come back and run the normal update command and not waste half an hour just waiting for packages to download.