fstab.remote uses the guest's network context.
[util-vserver.git] / doc / configuration.xml
index 98b04ec..9134178 100644 (file)
@@ -37,10 +37,10 @@ the 'barrier' attribute. Else, common chroot(2) exploits are possible.
       </description>
     </boolean>
 
-    <boolean id="global-namespace-cleanup" name="namespace-cleanup">
+    <boolean id="global-nonamespace-cleanup" name="nonamespace-cleanup">
       <description>
-Enable namespace cleanup globally. It can be overridden for a single vserver
-by setting the <optionref ref="global-nonamespace-cleanup">nonamespace-cleanup</optionref> flag
+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>
@@ -62,6 +62,34 @@ 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">
@@ -89,6 +117,33 @@ from this uri and install it at a temporary place.
        </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>
@@ -101,7 +156,7 @@ is invoked from the kernel. This should point somewhere e.g. into
        <collection name="vshelper-methods">
          <program name="handler" type="symbolic">
            <description>
-See vshelper/action.
+See <optionref ref="vshelper-action">vshelper/action</optionref>.
             </description>
          </program>
        </collection>
@@ -204,6 +259,14 @@ 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">
@@ -214,6 +277,34 @@ 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">
@@ -364,6 +455,13 @@ url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/ccaps-v13.c">lib/cc
 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>
@@ -381,30 +479,24 @@ the 'barrier' attribute. Else, common chroot(2) exploits are possible.
       </description>
     </boolean>
 
-    <boolean id="global-nonamespace-cleanup" name="nonamespace-cleanup">
+    <boolean id="namespace-cleanup" name="namespace-cleanup">
       <description>
-Overrides the global <optionref ref="global-namespace-cleanup">namespace-cleanup</optionref> flag and disables
+Overrides the global <optionref ref="global-nonamespace-cleanup">nonamespace-cleanup</optionref> flag and enables
 namespace cleanup for the current vserver.
       </description>
     </boolean>
 
-    <boolean name="namespace-cleanup">
-      <description>
-Enable 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 
-<optionref ref="global-namespace-cleanup-skip">global namespace-cleanup-skip</optionref>
+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>
-[experimental; name is subject of possible change] Contains the
+[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
@@ -470,7 +562,7 @@ 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 name="shell">
+    <scalar id="shell" name="shell">
       <description>
 Contains the pathname of the shell which will be used by the "vserver
 ... enter" command.
@@ -530,6 +622,13 @@ Apply the current ulimit to the whole context
       </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 which shall be used for the vserver.
@@ -547,7 +646,7 @@ the 'fstab' file should be used.
     <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 host; this means that mount will be
+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>
@@ -677,7 +776,7 @@ assumed.
          </description>
        </scalar>
        
-       <scalar name="action">
+       <scalar id="vshelper-action" name="action">
          <default>restart</default>
          <description>
 The action which is going to be executed when a vshelper event
@@ -734,7 +833,7 @@ skipped.
       <collection id="vshelper-methods" name="vshelper-methods">
        <program name="handler" type="symbolic">
          <description>
-See vshelper/action.
+See <optionref ref="vshelper-action">vshelper/action</optionref>.
           </description>
        </program>
       </collection>
@@ -1211,13 +1310,13 @@ in the first line. The special keyword 'inf' is recognized.
       </scalar>
       <scalar name="resource.hard" type="symbolic">
        <description>
-A file which contains the hard- of the given resource in the first
+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- of the given resource in the first
+A file which contains the soft-limit of the given resource in the first
 line. The special keyword 'inf' is recognized.
        </description>
       </scalar>
@@ -1238,19 +1337,19 @@ in the first line. The special keyword 'inf' is recognized.
       </scalar>
       <scalar name="resource.hard" type="symbolic">
        <description>
-A file which contains the hard- of the given resource in the first
+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- of the given resource in the first
+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 guaranted minimum of the given resource in
+A file which contains the guaranteed minimum of the given resource in
 the first line. The special keyword 'inf' is recognized.
         </description>
       </scalar>
@@ -1301,6 +1400,18 @@ tools and can *not* be modified.
       </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>
@@ -1322,7 +1433,7 @@ tools and can *not* be modified.
       </scalar>
     </collection>
 
-    <collection name="sched" since="0.30.212">
+    <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>
@@ -1362,24 +1473,24 @@ tools and can *not* be modified.
           <description>The bucket's size</description>
         </scalar>
         <scalar name="fill-rate">
-          <description>Amount of tokens to add each <optionref ref="interval">interval</optionref></description>
+          <description>Amount of tokens to add each <optionref ref="local-interval">interval</optionref></description>
         </scalar>
-        <scalar name="interval">
+        <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="interval2">interval2</optionref> when advancing idle time</description>
+          <description>Amount of tokens to add each <optionref ref="local-interval2">interval2</optionref> when advancing idle time</description>
         </scalar>
-        <scalar name="interval2">
+        <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 name="cpu-id">
+        <scalar id="cpu-id" name="cpu-id">
           <description>The CPU to apply these settings to</description>
         </scalar>
         <scalar name="bucket-id">