Network configuration engine
cfengine is a language based system specifically designed for testing and configuring unix-like systems attached to a TCP/IP network. You can think of cfengine as a very high level language -- much higher level than Perl or shell. A single statement can result in many hundreds of links being created, or the permissions of many hundreds of files being set. The idea of cfenginge is to create a single file or set of configuration files which will describe the setup of every host on your network.
cfagent runs on every host and parses one file (or file-set), the configuration of the host is checked against this file and, if desired, any deviations are fixed. cfagent reads a configuration file called cfengine.conf in a directory pointed to by the environment variable CFINPUTS. cfagent performs host integrity and security checks as well as installing and repairing system configuration.
Print only the name of the system administrator then quit.
Forces net copy even if remote server is localhost
Do not check access rights on file systems
Check mount points for consistency. If this option is set then directories which lie in the ”mount point“ area are checked to see whether there is anything mounted on them.
Enable debugging output. (parsing -d1,run, -d2, lite -d3)
Define a compound class symbol of the form alpha.beta.gamma.
Suppress file editing.
Globally force links to be created where plain files or links already exist. You have to use this in interactive mode and answer a yes/no query before cfagent will run like this.
Parse filename after this switch. By default cfagent looks for a file called cfengine.conf in the current directory.
Help information. Display version banner and options summary.
Prevents cfagent from generating any internal class name information. Can be used for emulation purposes.
Do not attempt to configure the local area network interface.
Switches on the inform output level, whereby cfagent reports everything it changes..
Do not copy/image any files.
Ignore locks when running.
Normally cfagent does not follow symbolic links when recursively parsing directories. This option will force it to do so.
Delete links which do not point to existing files (except in user home directories, which are not touched).
Do not attempt to mount file systems or edit the filesystem table.
Ignore modules in actionsequence.
No action. Only print what has to be done without actually doing it.
Cancel a set of classes, or undefine (set value to false) a compound class of the form alpha.beta.gamma.
Parse file and then stop. Used for checking the syntax of a program.
Switch off host splaying (sleeping).
Do not execute scripts or shell commands.
Silence run time warnings.
Do not tidy file systems.
Causes cfagent to generate an environment variable CFALLCLASSES which can be read by child processes (scripts). This variable contains a summary of all the currently defined classes at any given time. This option causes some system 5 systems to generate a Bus Error or segmentation fault.
When this option is set, cfagent adds an underscore to the beginning of all hard system classes (like _sun4, _linux etc.) This can be used to avoid naming conflicts if you are so injudicious as to name a host by the name of a hard class. Other classes are not affected.
Verbose mode. Prints detailed information about actions and state.
Print only the version string and then quit.
Do not execute the cf.preconf net configuration file.
Do not execute the links section of a program.
Do not print warning messages.
Mark Burgess, Oslo University College