Computer silliness

Chuck Grimes cgrimes at tsoft.com
Tue Mar 16 16:26:15 PST 1999



> What in god's name does all that mean?
>
> Doug

It means I'm a geek.

Seth Gordon ------------------

Speaking of computer silliness. This weekend, I decided to do the big move from 2.2.5 to 2.2.8 FreeBSD, and do it on-line, without turning off the machine.

What this means is downloading, compiling and installing a new operating system while still powered on, still running (oh, and yes for free). The trick is to use something called the CVS system (concurrent version system). This is a set of scripts and a software repository that contains a complete on-line, downloadable system. You set the scripts up on your home system, log-on to the site, and then execute the script. This starts a system check out, that goes through each and every directory and program on the home system, matches it to the on-line server version, changes the home version to match the current version in source code, and libraries. This takes about two to three hours (P5/133Mhz) on the first run.

Once the sources and libraries are up to date under CVSup system, then you can do 'Make world', a set of nested scripts that march through the home system in recursion, compiling a new version of each binary and all its dependencies, installing it, and going on to the next level, skipping the kernel and the specific machine dependent configuration binaries (/etc). This takes about five hours on my box. Then once that is finished, you can then either type 'reboot' once and boom, you are down and back up in about two minutes. This is what I did. Or, you can go directly to Make install for a new kernel and chance everything all at once--rebooting at the very end. In either case a whole box gets a new operating system and kernel with a down time of two minutes (or four)!

When I say down time, I mean only the operating system is off-line for about two minutes (reboot), but the power stays on. While this means nothing to me, it is important for networks. So, this was an exercise or model example of how to upgrade a running 'real' system. All the CVSup scripts work as processes on an up and running system so there is no downtime for any of that part of the upgrade process. Once these are configured and running properly, you can use a weekly or monthly cron script to automate this upgrade in the background and wait for some convenient period like three in the morning on a Sunday, to convert over to a new kernel--the two minute off-line period required to reboot and complete the process.

This is really hot shit. Think about what changing or upgrading an NT system would take in money, time, and compatibility problems.

Well enough comp-geek 101.

Chuck Grimes

Oh, yeah, see below for details:

[http://www.freebsd.org/support.html#cvs]



More information about the lbo-talk mailing list