start to track Daniel's version
[util-vserver.git] / doc / configuration.xml
diff --git a/doc/configuration.xml b/doc/configuration.xml
deleted file mode 100644 (file)
index 7cfe4ca..0000000
+++ /dev/null
@@ -1,1517 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE database SYSTEM "configuration.dtd" []>
-<!-- $Id: configuration.xml 2599 2007-08-26 21:30:50Z dhozac $ -->
-
-<database xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-          xsi:noNamespaceSchemaLocation="file:configuration.xsd">
-
-  <!-- Global configuration -->
-  <collection name=".defaults" use="optional">
-    <collection name="init" type="fixed">
-      <data name="mtab">
-       <description>Default mtab file</description>
-      </data>
-    </collection>
-
-    <link name="vdirbase">
-      <default>/vservers</default>
-      <description>A link to the default vserver rootdirectory.</description>
-    </link>
-
-    <link name="cachebase">
-      <default>/var/cache/vservers</default>
-      <description>
-A link to the directory which will hold cached information about
-vservers.
-      </description>
-    </link>
-
-    <boolean id="global-nonamespace" name="nonamespace">
-      <description>
-Disable namespace usage globally. It can be overridden for a single vserver
-by setting the <optionref ref="global-namespace">namespace</optionref> flag
-there.
-
-In this mode the <directory>/vservers</directory> directory must have
-the 'barrier' attribute. Else, common chroot(2) exploits are possible.
-      </description>
-    </boolean>
-
-    <boolean id="global-nonamespace-cleanup" name="nonamespace-cleanup">
-      <description>
-Disable namespace cleanup globally. It can be overridden for a single vserver
-by setting the <optionref ref="namespace-cleanup">namespace-cleanup</optionref> flag
-there.
-      </description>
-    </boolean>
-
-    <list id="global-namespace-cleanup-skip" name="namespace-cleanup-skip">
-      <description>
-List of paths to skip during namespace cleanup.
-      </description>
-    </list>
-
-    <link name="run.rev">
-      <description>
-Path of the vserver run reverse directory. This directory contains
-symlinks named with XID numbers which point back to the configuration
-directory of vservers. Under kernel 2.4 this is required for the XID
-to VSERVER mapping; Under kernel 2.6 it is unused.
-
-NOTE: this link exists in 0.30.202+ only; in previous versions it was
-a vserver specific setting.
-      </description>
-    </link>
-
-    <scalar name="shell">
-      <description>
-Contains the pathname of the shell which will be used by the "vserver
-... enter" command. Can be overridden by the
-<optionref ref="shell">per-guest shell</optionref>.
-      </description>
-    </scalar>
-
-    <data name="fstab">
-      <description>
-The default fstab file to put in newly built guests.
-      </description>
-    </data>
-
-    <boolean name="context.dynamic">
-      <description>
-If this file exists, kernel-side dynamic contexts will be used by the "vserver
-... build" command. Otherwise a context will be generated, based on the
-contents of <optionref>context.next</optionref>.
-      </description>
-    </boolean>
-
-    <scalar id="context.next" name="context.next">
-      <description>
-The context id to use for the next guest created by "vserver ... build".
-      </description>
-    </scalar>
-    
-    <collection name="apps">
-      <collection name="pkgmgmt">
-       <link name="base">
-         <default>/vservers/.pkg</default>
-       </link>
-       <data name="apt.conf">
-         <description>The default apt.conf which is going to be used. It is overridden by
-distribution specific configuration file.
-          </description>
-       </data>
-      </collection>
-      
-      <collection name="debootstrap">
-       <scalar name="mirror">
-         <description>
-The Debian mirror to use with the <tool>debootstrap</tool> program
-          </description>
-       </scalar>
-       <scalar name="uri">
-         <description>
-When the <tool>debootstrap</tool> package is not installed; fetch it
-from this uri and install it at a temporary place.
-          </description>
-       </scalar>
-      </collection>
-
-      <collection name="vdevmap">
-        <collection name="x" type="sybmolic">
-          <description>'x' is an arbitrary name, replace it with e.g. device names</description>
-          <boolean name="open">
-            <description>When this file exists, the device can be opened</description>
-          </boolean>
-          <boolean name="create">
-            <description>When this file exists, the device can be created (if the guest has <optionref ref="bcapabilities">CAP_MKNOD</optionref>)</description>
-          </boolean>
-          <boolean id="vdevmap-remap" name="remap">
-            <description>
-When this file exists, <optionref ref="vdevmap-target">target</optionref> will
-have to exist as well and opening the device will in fact open the target device
-            </description>
-          </boolean>
-          <scalar name="flags">
-            <description>This file will let you specify unimplemented flags manually</description>
-          </scalar>
-          <scalar name="device">
-            <description>Contains the name of a device node</description>
-          </scalar>
-          <scalar id="vdevmap-target" name="target">
-            <description>Contains the device node of the target node to open instead of the device when <optionref ref="vdevmap-remap">remap</optionref> is set</description>
-          </scalar>
-        </collection>
-      </collection>
-
-      <collection name="vshelper">
-       <link name="logfile">
-         <description>
-The file where output will be logged to when <tool>vshelper</tool>
-is invoked from the kernel. This should point somewhere e.g. into
-<directory>/var/log</directory>.
-          </description>
-       </link>
-
-       <collection name="vshelper-methods">
-         <program name="handler" type="symbolic">
-           <description>
-See <optionref ref="vshelper-action">vshelper/action</optionref>.
-            </description>
-         </program>
-       </collection>
-
-       <boolean name="disabled">
-         <description>
-When existing, the vshelper functionality will be disabled for all
-vservers.
-          </description>
-       </boolean>
-
-       <boolean name="debug">
-         <description>
-When existing, the vshelper execution will be traced.
-          </description>
-       </boolean>
-       
-       <boolean name="warning-disabled">
-         <description>
-When existing, sanity checks for the vshelper functionality will be
-skipped.
-          </description>
-       </boolean>
-
-      </collection>
-      
-      <collection name="vprocunhide">
-       <list name="files">
-         <description>
-A list of files which will be made visible by vprocunhide. Wildcards are
-allowed and anything ending in '/' will be processed recursively. When this file exists,
-it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files. The entries there must be
-absolute filenames inclusive the leading '/proc'.
-          </description>
-       </list>
-      </collection>
-      
-      <collection name="init">
-       <link name="tty">
-         <description>
-A symlink to the TTY device where input/output will be redirected from/to
-at startup via initscript.
-          </description>
-       </link>
-
-       <hash id="global-environment" name="environment" since="0.30.211">
-         <description>
-The environment to set when starting guests. Contains one VAR=VAL
-pair per line.
-         </description>
-       </hash>
-      </collection>
-      
-      <collection name="vunify">
-       <list name="exclude">
-         <description>Static list of excluded files.</description>
-       </list>
-
-       <collection name="hash" since="0.30.205">
-         <description>
-A directory which will be used as the storage place for the
-<tool>vhashify</tool> command.
-          </description>
-         <link name="id" type="symbolic">
-           <description>
-Points to a directory within the filesystems which are used for the
-vservers. There must be not more than one of such a directory per
-filesystem.
-            </description>
-         </link>
-
-         <scalar name="method" since="0.30.299">
-           <default>SHA1</default>
-           <description>The used hash method.</description>
-         </scalar>
-       </collection>
-
-       <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
-         <description>
-When existing, information from packagemanagement will not be used to
-create dynamic exclude-lists.
-          </description>
-       </boolean>
-
-       <boolean name="pgkmgmt-force" default="off" since="0.30.205">
-         <description>
-When existing, information from packagemanagement will be used to
-create dynamic exclude-lists. This option requires that (a known)
-packagemanagement is configured for the vserver; else the requested
-operation will fail. Most tools assume 'on' as the default value.
-          </description>
-       </boolean>
-
-      </collection>
-
-      <collection name="vlogin">
-       <boolean id="vlogin-disable" name="disable" since="0.30.212">
-         <description>
-When this file exists, vlogin isn't used on vserver &lt;guest&gt; enter.
-         </description>
-       </boolean>
-      </collection>
-
-      <collection name="build">
-        <list name="options">
-          <description>
-A list of default options to supply to vserver ... build, one option per line.
-          </description>
-        </list>
-      </collection>
-    </collection>
-
-    <collection name="interfaces" use="optional">
-      <boolean id="global-vlandev" name="vlandev" since="0.30.211">
-       <description>
-When this file exists, the steps which setup and destroy a VLAN
-interface will be executed.
-       </description>
-      </boolean>
-    </collection>
-
-    <collection name="files">
-      <description>This directory contains some files which will be copied to the guests during build.</description>
-      <data name="hosts">
-        <description>The default /etc/hosts file.</description>
-      </data>
-      <data name="nsswitch.conf">
-        <description>The default /etc/nsswitch.conf file.</description>
-      </data>
-      <data name="krb5.conf">
-        <description>The default /etc/krb5.conf file.</description>
-      </data>
-      <data name="krb.conf">
-        <description>The default /etc/krb.conf file.</description>
-      </data>
-      <data name="krb.realms">
-        <description>The default /etc/krb.realms file.</description>
-      </data>
-      <data name="ldap.conf">
-        <description>The default /etc/ldap.conf file.</description>
-      </data>
-      <data name="localtime">
-        <description>The default /etc/localtime file.</description>
-      </data>
-      <data name="resolv.conf">
-        <description>The default /etc/resolv.conf file.</description>
-      </data>
-    </collection>
-  </collection>
-    
-  <collection name=".distributions" use="optional">
-    <collection name="dist" type="symbolic">
-      <scalar name="dev">
-       <description></description>
-      </scalar>
-      <collection name="yum">
-       <description>
-The default, yum-related content of the <directory>/etc</directory>
-directory.
-        </description>
-       <scalar name="yum.conf">
-         <description>
-The master yum configuration file. It supports the @YUMETCDIR@,
-@YUMCACHEDIR@ and @YUMLOGDIR@ placeholder which will be replaced at
-<command>vserver ... build</command> time.
-          </description>
-       </scalar>
-      </collection>
-      <collection name="yum.repos.d">
-       <description>A directory with yum repositories.</description>
-      </collection>
-      <data name="apt.conf">
-       <description>
-The default apt.conf which is going to be used. It overrides the
-apt.conf from CONFDIR/.defaults/apps/pkgmgmt.
-        </description>
-      </data>
-      <program name="initpre">
-       <description>
-Script which will be executed before packages will be installed.
-          </description>
-       <parameterList>
-         <parameter name="confdir">
-           <description>
-The configuration directory of the vserver which is going to be set up.
-            </description>
-         </parameter>
-         <parameter name="util-vserver-vars">
-           <description>
-The pathname of the util-vserver-vars file.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <program name="initpost">
-       <description>
-Script which will be executed after packages are installed.
-          </description>
-       <parameterList>
-         <parameter name="confdir">
-           <description>
-The configuration directory of the vserver which is going to be set up.
-            </description>
-         </parameter>
-         <parameter name="vserver">
-           <description>
-The pathname of the util-vserver-vars file.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      
-      <collection name="pkgs">
-       <description>
-Contains files with packagenames.
-        </description>
-       <list name="list">
-         <description>
-File which contains the name of packages. On top of file the special
-keywords '--reinstall' and '--can-fail' are possible.
-          </description>
-       </list>
-      </collection>
-      
-      <collection name="pubkeys">
-       <description>
-Directory with GPG pubkeys which are used to sign the packages of this
-distribution.
-        </description>
-      </collection>
-      
-      <collection name="apt">
-       <description>
-Default content of the <directory>/etc/apt/</directory> directory.
-        </description>
-      </collection>
-      
-      <collection name="rpm">
-       <description>
-Default content of the <directory>/etc/rpm</directory> directory.
-        </description>
-      </collection>
-      
-      <link name="rpmlib">
-       <description>
-Directory which overrides <directory>/usr/lib/rpm</directory>.
-        </description>
-      </link>
-      <link name="execdir">
-       <description>
-Directory with all executables and libraries which are required for
-this distribution.
-        </description>
-      </link>
-    </collection>
-    <link name="template">
-      <description>
-Symlink to the default template for this distribution.
-      </description>
-    </link>
-  </collection>
-  
-  <!-- Vserver configuration -->
-  <collection name="vserver-name" type="symbolic">
-    <description>
-The configuration directory for the vserver vserver-name.
-    </description>
-
-    <link name="cache">
-      <default>../.defaults/cachebase/VSERVERNAME</default>
-      <description>
-Path of the storage area for cached information about this vserver.
-      </description>
-    </link>
-    
-    <link name="vdir">
-      <default>../.defaults/vdirbase/VSERVERNAME</default>
-      <description>
-Path of the vserver root directory.
-      </description>
-    </link>
-
-    <link name="run">
-      <description>
-Points to a file which will contain the XID of the running vserver. When
-the vserver is stopped, this can be a dangling symlink.
-      </description>
-    </link>
-
-    <list id="bcapabilities" name="bcapabilities">
-      <description>
-Contains the system capabilities. See
-<ulink url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/bcaps-v13.c">lib/bcaps-v13.c</ulink>
-for possible values.
-      </description>
-    </list>
-    <list name="ccapabilities">
-      <description>
-Contains the context capabilities. See <ulink
-url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/ccaps-v13.c">lib/ccaps-v13.c</ulink>
-for possible values.
-      </description>
-    </list>
-    <list name="ncapabilities" since="0.30.212">
-      <description>
-Contains the network capabilities. See <ulink
-url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/ncaps-net.c">lib/ncaps-net.c</ulink>
-for possible values.
-      </description>
-    </list>
-
-    <boolean id="global-namespace" name="namespace">
-      <description>
-Overrides the global <optionref ref="global-nonamespace">nonamespace</optionref> flag and enables
-namespace usage for the current vserver.
-      </description>
-    </boolean>
-
-    <boolean name="nonamespace">
-      <description>
-Disables namespace usage for the current vserver.
-
-In this mode the <directory>/vservers</directory> directory must have
-the 'barrier' attribute. Else, common chroot(2) exploits are possible.
-      </description>
-    </boolean>
-
-    <boolean id="namespace-cleanup" name="namespace-cleanup">
-      <description>
-Overrides the global <optionref ref="global-nonamespace-cleanup">nonamespace-cleanup</optionref> flag and enables
-namespace cleanup for the current vserver.
-      </description>
-    </boolean>
-
-    <list name="namespace-cleanup-skip">
-      <description>
-List of paths to skip during namespace cleanup. This overrides the global
-<optionref ref="global-namespace-cleanup-skip">namespace-cleanup-skip</optionref>
-file.
-      </description>
-    </list>
-
-    <hash name="schedule">
-      <description>
-[deprecated; use <optionref ref="sched">sched</optionref> instead] Contains the
-scheduler parameters, one per line.
-
-The Hard CPU limit uses a mechanism called a Token Bucket.  the
-concept is simple: you have a bucket of a certain size which is
-filled with a specified amount R of tokens each interval T until the
-maximum is reached (excess tokens are spilled). At each timer tick,
-a running process consumes one token from the bucket, unless the
-bucket is empty. If the bucket is empty the process is put in the
-hold queue. When the bucket has been refilled to at least M tokens,
-all on hold processes are rescheduled.
-
-See the <ulink url="http://linux-vserver.org/Scheduler+Parameters">Linux
-VServer Wiki</ulink> for more information about this file.
-      </description>
-      <keys>
-       <key id="fill_rate" name="fill-rate">
-         <description>
-Amount of tokens append to the bucket each interval.
-            </description>
-       </key>
-       <key name="interval">
-         <description>
-The intervall between refills of amount <optionref>fill_rate</optionref>. This
-value is express in ticks.
-          </description>
-       </key>
-       <key name="tokens">
-         <description>
-Initial bucket contents.
-          </description>
-       </key>
-       <key name="tokens-min">
-         <description>
-The minimum amount of tokens required to unhold processes
-          </description>
-       </key>
-       <key name="tokens-max">
-         <description>
-The bucket size.
-          </description>
-       </key>
-       <key name="priority-bias">
-         <description>
-???
-          </description>
-       </key>
-      </keys>
-    </hash>
-    <scalar name="name">
-      <description>
-Contains the name of the vserver. When not given, the basename of the directory
-will be assumed as this name.
-      </description>
-    </scalar>
-    <scalar name="nice">
-      <description>
-The nice-level on which the vserver will be started.
-      </description>
-    </scalar>
-    <list name="capabilities">
-      <description>
-Contains per line a capability. This file is used for the 2.4 kernel
-only; for 2.6 use <optionref>bcapabilities</optionref>.
-      </description>
-    </list>
-    <scalar id="shell" name="shell">
-      <description>
-Contains the pathname of the shell which will be used by the "vserver
-... enter" command.
-      </description>
-    </scalar>
-    <list name="personality">
-      <description>
-Used to set the personality of the vserver. First line in the file
-is the personality-type followed by flags (one item per line). See
-<filename>/usr/include/linux/personality.h</filename> for possible
-values.
-      </description>
-    </list>
-    <list name="flags">
-      <description>
-Contains per line a flag. See <ulink
-url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/cflags-v13.c">lib/cflags-v13.c</ulink>
-for possible values.
-      </description>
-      <!--
-      <elements>
-       <element name="fakeinit">
-         <description>
-The new process will believe it is process number 1. Useful to run a
-real /sbin/init in a vserver. Warning: this flag should not be used
-unless you know what you are doing. Often, it is better to use the
-'plain' initstyle.
-          </description>
-       </element>
-       <element name="lock">
-         <description>
-The new process is trapped and can't use chcontext anymore.
-          </description>
-       </element>
-       <element name="sched">
-         <description>
-The new process and its children will share a common
-          </description>
-       </element>
-       <element name="nproc">
-         <description>
-Limit the number of process in the vserver according to
-ulimit setting. Normally, ulimit is a per user thing.
-With this flag, it becomes a per vserver thing.
-          </description>
-       </element>
-       <element name="private">
-         <description>
-No one can join this security context once created.
-          </description>
-       </element>
-       <element name="ulimit">
-         <description>
-Apply the current ulimit to the whole context
-          </description>
-       </element>
-      </elements>
-      -->
-    </list>
-    <list name="nflags" since="0.30.212">
-      <description>
-Contains a network flag per line. See <ulink
-url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/nflags-net.c">lib/nflags-net.c</ulink>
-for possible values.
-      </description>
-    </list>
-    <scalar name="context">
-      <description>
-Contains the context id which shall be used for the vserver. Valid range is 2 through 49151.
-        </description>
-    </scalar>
-    <scalar name="ncontext">
-      <description>
-Contains the network context id which shall be used for the vserver. Valid range is 2 through 49151.
-      </description>
-    </scalar>
-    <scalar name="tag">
-      <description>
-Contains the filesystem tag which shall be used for the vserver. Valid range is 2 through 49151.
-      </description>
-    </scalar>
-    <data id="fstab" name="fstab">
-      <description>
-The fstab file for the vserver. Entries in this file will be mounted
-within the network context of the host. Use the
-<optionref>fstab.remote</optionref> file when you want that the
-mounting happens in the network context of the vserver. In most cases
-the 'fstab' file should be used.
-      </description>
-    </data>
-    <data id="fstab.remote" name="fstab.remote">
-      <description>
-The fstab file for the vserver. Entries in this file will be mounted
-within the network context of the guest; this means that mount will be
-called as <command>chbind &lt;options&gt; mount ...</command>. See
-<optionref>fstab</optionref> also.
-      </description>
-    </data>
-    
-    <collection name="apps">
-      <collection name="init">
-       <data name="mtab">
-         <description>
-The initial-mtab which will be used for the vserver.
-          </description>
-       </data>
-       
-       <scalar name="style">
-         <description>
-Contains the init-style.
-          </description>
-         <restriction>
-           <enumeration value="sysv"/>
-           <enumeration value="plain"/>
-           <enumeration value="minit"/>
-         </restriction>
-       </scalar>
-       
-       <scalar name="runlevel">
-         <description>The start runlevel.</description>
-       </scalar>
-       
-       <scalar name="runlevel.start">
-         <description>The start runlevel.</description>
-       </scalar>
-       
-       <scalar name="runlevel.stop">
-         <description>The stop runlevel.</description>
-       </scalar>
-       
-       <scalar name="killseq">
-         <description>
-Contains the 'signal [wait signal]*' sequence which is used to stop
-the vserver.
-          </description>
-       </scalar>
-       
-       <list name="cmd.start">
-         <description>
-The command which is used to start the vserver. Each option must be on
-a separate line.
-          </description>
-       </list>
-       
-       <list name="cmd.start-sync">
-         <description>
-The command which is used to wait on the vserver after it has been
-started. Each option must be on a separate line. This file will be
-ignored when the <optionref>sync</optionref> flag does not exist and the
-'--sync' option was not used.
-         </description>
-       </list>
-       
-       <list name="cmd.stop">
-         <description>
-The command which is used to stop the vserver. Each option must be on
-a separate line.
-          </description>
-       </list>
-       
-       <list name="cmd.stop-sync">
-         <description>
-The command which is used to wait on the vserver after it has been
-stopped. Each option must be on a separate line. This file will be
-ignored when the <optionref>sync</optionref> flag does not exist and the
-'--sync' option was not used.
-          </description>
-       </list>
-       
-       <list name="cmd.prepare">
-         <description>
-The command which is used to setup the init-system (e.g. to set the
-runlevel in the utmp-file). Each option must be on a separate line.
-         </description>
-       </list>
-       
-       <boolean id="sync" name="sync">
-         <description>
-If this file is not present, all 'cmd.*-sync files will be ignored.
-           </description>
-       </boolean>
-       
-       <link name="tty">
-         <description>
-A symlink to the TTY device where input/output will be redirected
-from/to at startup via initscript.
-         </description>
-       </link>
-       
-       <scalar name="mark">
-         <description>
-This file is used to mark group of vservers which shall be started/stopped
-together by the initscript. Content is a simple string like 'default'.
-         </description>
-       </scalar>
-       
-       <list name="depends">
-         <description>
-This file is used to configure vservers which must be running before
-the current vserver can be started. At shutdown, the current vserver
-will be stopped before its dependencies. Content of this file are
-vserver ids (one name per line).
-          </description>
-       </list>
-
-       <hash name="environment" since="0.30.211">
-         <description>
-The environment to set when starting the guest. Contains one VAR=VAL
-pair per line.
-         </description>
-       </hash>
-      </collection>
-      
-      <collection name="vshelper">
-       <scalar name="sync-timeout">
-         <default>30</default>
-         <description>
-The timeout in seconds which is used when synchronising vserver
-startup/shutdown with the vshelper. When not set, 30 seconds will be
-assumed.
-         </description>
-       </scalar>
-       
-       <scalar id="vshelper-action" name="action">
-         <default>restart</default>
-         <description>
-The action which is going to be executed when a vshelper event
-occurs. The default value is 'restart', but there can be defined own
-methods by placing scripts into the
-<optionref>vshelper-methods</optionref> directories. These scripts are
-fed with the same arguments as the <tool>vshelper</tool> script.
-          </description>
-       </scalar>
-       
-       <program name="event" type="symbolic">
-         <description>
-When existing, these scripts will be executed *instead* of the default
-handler defined in 'action'. Their name must match the event which caused
-the execution of <tool>vshelper</tool>; e.g. 'restart' or 'poweroff'. See
-the vs_reboot() function in the kernel for more details.
-          </description>
-         <parameterList>
-           <parameter name="xid">
-             <description>
-The xid of the context calling the vshelper
-              </description>
-           </parameter>
-           <parameter name="event">
-             <description>
-The reboot-event.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-       
-       <boolean name="disabled">
-         <description>
-When existing, the vshelper functionality will be disabled for this
-vserver.
-          </description>
-       </boolean>
-
-       <boolean name="debug">
-         <description>
-When existing, the vshelper execution will be traced for this vserver.
-          </description>
-       </boolean>
-       
-       <boolean name="warning-disabled">
-         <description>
-When existing, sanity checks for the vshelper functionality will be
-skipped.
-          </description>
-       </boolean>
-       
-      </collection>
-      
-      <collection id="vshelper-methods" name="vshelper-methods">
-       <program name="handler" type="symbolic">
-         <description>
-See <optionref ref="vshelper-action">vshelper/action</optionref>.
-          </description>
-       </program>
-      </collection>
-      
-      <collection name="vunify">
-       <description>
-This directory contains configuration data required for vserver
-unification.
-        </description>
-       
-       <list name="exclude">
-         <description>
-<p>Static list of files which are excluded for unification. This list
-supports an rsync-like syntax: when a file is prefixed by '+', it is a
-candidate for unification; when there is no prefix or a '-' or a '~' it
-will be excluded. Shell-wildcards are allowed for the filenames.</p>
-<p>When used with <tool>vcopy</tool>, the '~' prefix prevents copying
-of the file entirely (e.g. for keyfiles). With this tool, the file will
-be copied instead of hardlinked when the '-' prefix is used.</p>
-          </description>
-       </list>
-       
-       <link name="refserver.X" type="symbolic">
-         <description>
-These are symlinks to the configuration directory
-(e.g. CONFDIR/vservers/&lt;id&gt;) of a refserver. There may be
-multiple such symlinks but they must be prefixed by 'refserver.' and
-will be processed in alphanumerical order.
-          </description>
-       </link>
-
-       <collection name="hash" since="0.30.205">
-         <description>
-A directory which will be used as the storage place for the
-<tool>vhashify</tool> command.
-          </description>
-         <link name="id" type="symbolic">
-           <description>
-Points to a directory within the filesystems which are used for the
-vservers. There must be not more than one of such a directory per
-filesystem.
-            </description>
-         </link>
-
-         <scalar name="method"  since="0.30.299">
-           <default>SHA1</default>
-           <description>The used hash method.</description>
-         </scalar>
-       </collection>
-
-       <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
-         <description>
-When existing, information from packagemanagement will not be used to
-create dynamic exclude-lists.
-          </description>
-       </boolean>
-
-       <boolean name="pgkmgmt-force" default="off" since="0.30.205">
-         <description>
-When existing, information from packagemanagement will be used to
-create dynamic exclude-lists. This option requires that (a known)
-packagemanagement is configured for the vserver; else the requested
-operation will fail. Most tools assume 'on' as the default value.
-          </description>
-       </boolean>
-       
-      </collection>
-    </collection>
-    
-    <collection name="scripts">
-      <description>
-A directory for scripts. By default, when one of these scripts will be
-executed, the execution of defaultscripts (within .../.defaults/scripts)
-will be skipped. To execute them nevertheless, the $DONT_SKIP_DEFAULTS
-environment variable must be set by one of the in-shellcontext scripts
-(the non-executable ones).
-      </description>
-      
-      <program name="initialize" since="0.30.211">
-       <description>
-The scriptlet which will be executed before the root filesystem is mounted and
-the configuration has been loaded. Before executing the script, the
-configuration directory will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="initialize.d" since="0.30.211">
-       <description>
-Repository of initialize like scripts.  Before executing the script,
-the configuration directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See initialize.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-      
-      <program name="prepre-start">
-       <description>
-The scriptlet which will be executed before the network-interfaces are
-enabled and the directories are mounted. Before executing the script,
-the configuration directory will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="prepre-start.d">
-       <description>
-Repository of prepre-start like scripts.  Before executing the script,
-the configuration directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See prepre-start.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-      
-      <program name="pre-start">
-       <description>
-The scriptlet which will be executed after network-interfaces were
-enabled and the directories mounted, but before the vserver itself has
-been started.  Before executing the script, the vserver root directory
-will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="pre-start.d">
-       <description>
-Repository of pre-start like scripts. Before executing these scripts,
-the vserver root directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See pre-start.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-      
-
-      <program name="post-start">
-       <description>
-The scriptlet which will be executed after the vserver has been
-started. Before executing the script, the vserver root directory
-will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="post-start.d">
-       <description>
-Repository of post-start like scripts. Before executing these scripts,
-the vserver root directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See post-start.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-
-
-      <program name="pre-stop">
-       <description>
-The scriptlet which will be executed before the vserver will be
-stopped. Before executing the script, the vserver root directory
-will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="pre-stop.d">
-       <description>
-Repository of pre-stop like scripts. Before executing the script, the
-vserver root directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See pre-stop.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-
-      <program name="post-stop">
-       <description>
-The scriptlet which will be executed after the vserver has been
-stopped, but before the directories will be umounted and the the
-interfaces disabled. Before executing the script, the vserver root
-directory will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="post-stop.d">
-       <description>
-Repository of post-stop like scripts. Before executing the script, the
-vserver root directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See post-stop.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-      
-      <program name="postpost-stop">
-       <description>
-The scriptlet which will be executed after the vserver has been stopped
-completely. Before executing the script, the vserver root directory
-will be made the working directory.
-        </description>
-       <parameterList>
-         <parameter name="action">
-           <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-            </description>
-         </parameter>
-         <parameter name="vserver-name">
-           <description>
-The name of the current vserver.
-            </description>
-         </parameter>
-       </parameterList>
-      </program>
-      <collection name="postpost-stop.d">
-       <description>
-Repository of postpost-stop like scripts. Before executing the script,
-the vserver root directory will be made the working directory.
-        </description>
-       <program name="script" type="symbolic">
-         <description>See postpost-stop.</description>
-         <parameterList>
-           <parameter name="action">
-             <description>
-The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
-              </description>
-           </parameter>
-           <parameter name="vserver-name">
-             <description>
-The name of the current vserver.
-              </description>
-           </parameter>
-         </parameterList>
-       </program>
-      </collection>
-    </collection>
-    
-    <collection name="interfaces">
-      <scalar name="bcast">
-       <description>The guest's broadcast address.</description>
-      </scalar>
-      <scalar name="lback">
-        <description>The guest's loopback address.</description>
-      </scalar>
-      <scalar name="dev">
-       <description>The default network device. See <optionref ref="per-if-dev">iface/dev</optionref> for more information.</description>
-      </scalar>
-      <scalar name="prefix">
-       <description>The default network prefix-length.</description>
-      </scalar>
-      <scalar name="mask">
-       <description>The default network mask.</description>
-      </scalar>
-      <scalar name="scope">
-       <description>The default scope of the network interfaces.</description>
-      </scalar>
-      <boolean id="local-vlandev" name="vlandev" since="0.30.211">
-       <description>
-When this file exists, the steps which setup and destroy a VLAN
-interface will be executed for all interfaces of this vserver.
-       </description>
-      </boolean>
-      <boolean id="local-novlandev" name="novlandev">
-       <description>
-When this file exists, the steps which setup and destroy a VLAN
-interface will be skipped. This overrides the global
-<optionref ref="global-vlandev">vlandev</optionref> setting for
-this vserver.
-       </description>
-      </boolean>
-      
-      <collection name="iface" type="symbolic">
-       <description>
-'iface' is an arbitrary name for the interface; the value itself is
-not important but may be interesting regarding interface-creation and
-usage with <tool>chbind</tool>. Both happens in alphabetical order and
-numbers like '00' are good names for these directories.
-        </description>
-       
-       <boolean name="disabled">
-         <description>When this file exists, this interface will be ignored.</description>
-       </boolean>
-       
-       <scalar name="ip">
-         <description>The IP address which will be assigned to this interface.</description>
-       </scalar>
-       <scalar name="dev" id="per-if-dev">
-         <description>The network device. When this is specified, the IP address will be assigned and removed when starting and stopping the guest.</description>
-       </scalar>
-       <scalar name="prefix">
-         <description>The network prefix-length.</description>
-       </scalar>
-       <scalar name="mask">
-         <description>The network mask.</description>
-       </scalar>
-       <scalar name="scope">
-         <description>The scope of the network interface.</description>
-       </scalar>
-       <scalar name="name">
-         <description>
-When this file exists, the interface will be named with the text in
-this file. Without such an entry, the IP will not be shown by
-<tool>ifconfig</tool> but by <command>ip addr ls</command> only.  Such
-a labeled interface is known as an "alias" also (e.g. 'eth0:foo').
-          </description>
-       </scalar>
-       <boolean name="nodev">
-         <description>
-When this file exists, the interface will be assumed to exist
-already. This can be used to assign primary interfaces which are
-created by the host or another vserver.
-         </description>
-       </boolean>
-       <boolean name="novlandev">
-         <description>
-When this file exists, the steps which setup and destroy a VLAN
-interface will be skipped. This will override the global
-<optionref ref="global-vlandev">vlandev</optionref> and the per-guest
-<optionref ref="local-vlandev">vlandev</optionref>.
-         </description>
-       </boolean>
-       <boolean name="vlandev" since="0.30.211">
-         <description>
-When this file exists, the steps which setup and destroy a VLAN
-interface will be executed.
-         </description>
-       </boolean>
-      </collection>
-    </collection>
-    
-    <collection name="ulimits">
-      <description>
-A directory with ulimits. Possible resources are cpu, data, fsize,
-locks, memlock, nofile, nproc, rss and/or stack.
-      </description>
-      <scalar name="resource" type="symbolic">
-       <description>
-A file which contains the hard- and soft-limit of the given resource
-in the first line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-      <scalar name="resource.hard" type="symbolic">
-       <description>
-A file which contains the hard-limit of the given resource in the first
-line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-      <scalar name="resource.soft" type="symbolic">
-       <description>
-A file which contains the soft-limit of the given resource in the first
-line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-    </collection>
-    
-    <collection name="rlimits">
-      <description>
-A directory with resource limits. Possible resources are cpu, fsize,
-data, stack, core, rss, nproc, nofile, memlock, as, locks, msgqueue,
-nsock, openfd, anon, shmem, semary, nsems and dentry. This
-configuration will be honored for kernel 2.6 only.
-      </description>
-      <scalar name="resource" type="symbolic">
-       <description>
-A file which contains the hard- and soft-limit of the given resource
-in the first line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-      <scalar name="resource.hard" type="symbolic">
-       <description>
-A file which contains the hard-limit of the given resource in the first
-line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-      <scalar name="resource.soft" type="symbolic">
-       <description>
-A file which contains the soft-limit of the given resource in the first
-line. The special keyword 'inf' is recognized.
-       </description>
-      </scalar>
-      <scalar name="resource.min" type="symbolic">
-       <description>
-A file which contains the guaranteed minimum of the given resource in
-the first line. The special keyword 'inf' is recognized.
-        </description>
-      </scalar>
-    </collection>
-    
-    <collection name="uts">
-      <scalar name="context">
-       <description>
-The context-name of the vserver. This file is listed for completeness
-only; the 'context' name is used and set internally by the util-vserver
-tools and can *not* be modified.
-       </description>
-      </scalar>
-      <scalar name="sysname">
-       <description>The sysname of the vserver</description>
-      </scalar>
-      <scalar name="nodename">
-       <description>The node-/hostname of the vserver</description>
-      </scalar>
-      <scalar name="release">
-       <description>The OS-release of the vserver</description>
-      </scalar>
-      <scalar name="version">
-       <description>The OS-version of the vserver</description>
-      </scalar>
-      <scalar name="machine">
-       <description>The machine-type of the vserver</description>
-      </scalar>
-      <scalar name="domainname">
-       <description>The NIS domainname of the vserver</description>
-      </scalar>
-    </collection>
-
-    <collection name="dlimits" since="0.30.210">
-      <collection name="dlimit" type="symbolic">
-        <scalar name="directory">
-          <description>The directory to which the limit should be applied</description>
-        </scalar>
-        <scalar name="inodes_total">
-          <description>The amount of inodes this vserver should be limited to</description>
-        </scalar>
-        <scalar name="space_total">
-          <description>The amount of space this vserver should be limited to (measured in blocks of 1024 bytes)</description>
-        </scalar>
-        <scalar name="reserved">
-          <description>How much space (percentage-wise) should be reserved for the root user</description>
-        </scalar>
-      </collection>
-    </collection>
-
-    <collection name="sysctl" since="0.30.213">
-      <collection name="x" type="symbolic">
-        <description>'x' is an arbitrary name, replace it with e.g. integers</description>
-        <scalar name="setting">
-          <description>The sysctl setting</description>
-        </scalar>
-        <scalar name="value">
-          <description>The value</description>
-        </scalar>
-      </collection>
-    </collection>
-
-    <collection name="cpuset" since="0.30.211">
-      <scalar name="name">
-        <description>The name of the cpuset for this vserver</description>
-      </scalar>
-      <scalar name="cpus">
-        <description>The list of CPUs in this cpuset</description>
-      </scalar>
-      <scalar name="mems">
-        <description>The list of Memory Nodes in this cpuset</description>
-      </scalar>
-      <scalar name="cpu_exclusive">
-        <description>Is the CPU assignment exclusive?</description>
-      </scalar>
-      <scalar name="mems_exclusive">
-        <description>Is the memory node assignment exclusive?</description>
-      </scalar>
-      <scalar name="nocreate">
-        <description>When this file exists, the cpuset will be assumed to exist already</description>
-      </scalar>
-    </collection>
-
-    <collection id="sched" name="sched" since="0.30.212">
-      <scalar id="global-tokens" name="tokens">
-        <description>The initial amount of tokens to put in the bucket</description>
-      </scalar>
-      <scalar id="global-tokens-min" name="tokens-min">
-        <description>The minimum amount of tokens required to unhold the context</description>
-      </scalar>
-      <scalar id="global-tokens-max" name="tokens-max">
-        <description>The bucket's size</description>
-      </scalar>
-      <scalar id="global-fill-rate" name="fill-rate">
-        <description>Amount of tokens to add each <optionref ref="global-interval">interval</optionref></description>
-      </scalar>
-      <scalar id="global-interval" name="interval">
-        <description>The interval between refills of the bucket</description>
-      </scalar>
-      <scalar id="global-priority-bias" name="priority-bias">
-        <description>Bias added to priorities calculated within the guest (result is clamped to -20/+19)</description>
-      </scalar>
-      <scalar id="global-fill-rate2" name="fill-rate2">
-        <description>Amount of tokens to add each <optionref ref="global-interval2">interval2</optionref> when advancing idle time</description>
-      </scalar>
-      <scalar id="global-interval2" name="interval2">
-        <description>The interval between refills of the bucket when advancing idle time</description>
-      </scalar>
-      <boolean id="global-idle-time" name="idle-time">
-        <description>When this file exists, advancing idle time is activated</description>
-      </boolean>
-      <collection name="cpu-id" type="symbolic">
-        <description>This directory contains per-CPU and/or per-bucket specific settings. Remember to set the <optionref ref="cpu-id">cpu-id</optionref> file. All CPUs inherit the global settings.</description>
-        <scalar name="tokens">
-          <description>The initial amount of tokens to put in the bucket</description>
-        </scalar>
-        <scalar name="tokens-min">
-          <description>The minimum amount of tokens required to unhold the context</description>
-        </scalar>
-        <scalar name="tokens-max">
-          <description>The bucket's size</description>
-        </scalar>
-        <scalar name="fill-rate">
-          <description>Amount of tokens to add each <optionref ref="local-interval">interval</optionref></description>
-        </scalar>
-        <scalar id="local-interval" name="interval">
-          <description>The interval between refills of the bucket</description>
-        </scalar>
-        <scalar name="priority-bias">
-          <description>Bias added to priorities calculated within the guest (result is clamped to -20/+19)</description>
-        </scalar>
-        <scalar name="fill-rate2">
-          <description>Amount of tokens to add each <optionref ref="local-interval2">interval2</optionref> when advancing idle time</description>
-        </scalar>
-        <scalar id="local-interval2" name="interval2">
-          <description>The interval between refills of the bucket when advancing idle time</description>
-        </scalar>
-        <boolean name="idle-time">
-          <description>When this file exists, advancing idle time is activated</description>
-        </boolean>
-        <scalar id="cpu-id" name="cpu-id">
-          <description>The CPU to apply these settings to</description>
-        </scalar>
-        <scalar name="bucket-id">
-          <description>The bucket to apply these settings to</description>
-        </scalar>
-      </collection>
-    </collection>
-  </collection>
-  </database>