using FAI to maintain (as well as install) systems?

Henning Glawe glaweh at
Thu Oct 9 23:49:07 CEST 2003

On Thu, Oct 09, 2003 at 10:26:01PM +0200, Erik Rossen wrote:
> Is there a HOWTO or a recipe available that explains how to use FAI to
> *maintain* machines as well as installing them?
> I've read the FAI manual, done about 50 installs over the last two
> weeks, and I've read the paper at
>  I like
> FAI a lot, but it seems to be missing an obvious method of using the
> classes for maintaining machines after they have been installed.  The
> following scheme should be adequate for my present needs, but I would
> appreciate any pointers from people who have already invented this
> wheel.

I wrote a few extensions to FAI to make remote system maintainance 
possible, much of it is already merged into FAI, though not (nearly) any
documentation exists yet.
My scheme is built on CVS for configuration file revision management:
1) at install time, a client checks out the configuration files directly
   from cvs and keeps this copy stored on the local harddisk (done in

2) for updating a system, a script 'fai-update-system' is called, which
   is basically a normal FAI installation, of cause skipping 
   partitioning and bootstrapping ;).
   for detection configuration changes, the local copy of $FAI is copied
   into a temporary directory. in there a 'cvs update' is done,
   recording all changed files into $LOGDIR/cvs.log.
   I wrote an extension to fcopy (merged already for quite a long time):
   the options -P and -L (read more on the fcopy manpage about it). It
   allows me to keep track of the configuration files used "last time"
   (either install or update) and to update only the changed 
   configuration files (either changed class or changed file).

For simplicity, configuration of the system is done via a recursive
fcopy call, we just have too many files to use the one-by-one method ;)

This modified version of FAI is in use since 1.5 years (at that time
using woody=testing), we are keeping ca. 120 computers up-to-date using
this patched FAI. 

There are a few local patches and scripts left (and I'm using a
different packaging scheme), which I try to update to the current FAI
version... with some luck, Thomas will accept some (or most ?) of it.

Documentation is a 'black chapter': I just started documenting my code,
as a fist part the general usage of CVS for storing configuration data.
I just saw Thomas merged this into fai-cvs.
Next will be the updating mechanism... but, maybe as everyone else, I
hate writing documentation ;), so I always have to fight against myself
to stop hacking but document instead.

c u

More information about the linux-fai mailing list