Work with builds done in a separate directory.
[util-vserver.git] / doc / configuration.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE database SYSTEM "configuration.dtd" []>
3 <!-- $Id$ -->
4
5 <database xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6           xsi:noNamespaceSchemaLocation="file:configuration.xsd">
7
8   <!-- Global configuration -->
9   <collection name=".defaults" use="optional">
10     <collection name="init" type="fixed">
11       <data name="mtab">
12         <description>Default mtab file</description>
13       </data>
14     </collection>
15
16     <link name="vdirbase">
17       <default>/vservers</default>
18       <description>A link to the default vserver rootdirectory.</description>
19     </link>
20
21     <link name="cachebase">
22       <default>/var/cache/vservers</default>
23       <description>
24 A link to the directory which will hold cached information about
25 vservers.
26       </description>
27     </link>
28
29     <boolean id="global-nonamespace" name="nonamespace">
30       <description>
31 Disable namespace usage globally. It can be overridden for a single vserver
32 by setting the <optionref ref="global-namespace">namespace</optionref> flag
33 there.
34
35 In this mode the <directory>/vservers</directory> directory must have
36 the 'barrier' attribute. Else, common chroot(2) exploits are possible.
37       </description>
38     </boolean>
39
40     <boolean id="global-nonamespace-cleanup" name="nonamespace-cleanup">
41       <description>
42 Disable namespace cleanup globally. It can be overridden for a single vserver
43 by setting the <optionref ref="namespace-cleanup">namespace-cleanup</optionref> flag
44 there.
45       </description>
46     </boolean>
47
48     <list id="global-namespace-cleanup-skip" name="namespace-cleanup-skip">
49       <description>
50 List of paths to skip during namespace cleanup.
51       </description>
52     </list>
53
54     <link name="run.rev">
55       <description>
56 Path of the vserver run reverse directory. This directory contains
57 symlinks named with XID numbers which point back to the configuration
58 directory of vservers. Under kernel 2.4 this is required for the XID
59 to VSERVER mapping; Under kernel 2.6 it is unused.
60
61 NOTE: this link exists in 0.30.202+ only; in previous versions it was
62 a vserver specific setting.
63       </description>
64     </link>
65
66     <scalar name="shell">
67       <description>
68 Contains the pathname of the shell which will be used by the "vserver
69 ... enter" command. Can be overridden by the
70 <optionref ref="shell">per-guest shell</optionref>.
71       </description>
72     </scalar>
73
74     <data name="fstab">
75       <description>
76 The default fstab file to put in newly built guests.
77       </description>
78     </data>
79
80     <boolean name="context.dynamic">
81       <description>
82 If this file exists, kernel-side dynamic contexts will be used by the "vserver
83 ... build" command. Otherwise a context will be generated, based on the
84 contents of <optionref>context.next</optionref>.
85       </description>
86     </boolean>
87
88     <scalar id="context.next" name="context.next">
89       <description>
90 The context id to use for the next guest created by "vserver ... build".
91       </description>
92     </scalar>
93     
94     <collection name="apps">
95       <collection name="pkgmgmt">
96         <link name="base">
97           <default>/vservers/.pkg</default>
98         </link>
99         <data name="apt.conf">
100           <description>The default apt.conf which is going to be used. It is overridden by
101 distribution specific configuration file.
102           </description>
103         </data>
104       </collection>
105       
106       <collection name="debootstrap">
107         <scalar name="mirror">
108           <description>
109 The Debian mirror to use with the <tool>debootstrap</tool> program
110           </description>
111         </scalar>
112         <scalar name="uri">
113           <description>
114 When the <tool>debootstrap</tool> package is not installed; fetch it
115 from this uri and install it at a temporary place.
116           </description>
117         </scalar>
118       </collection>
119
120       <collection name="vdevmap">
121         <collection name="x" type="sybmolic">
122           <description>'x' is an arbitrary name, replace it with e.g. device names</description>
123           <boolean name="open">
124             <description>When this file exists, the device can be opened</description>
125           </boolean>
126           <boolean name="create">
127             <description>When this file exists, the device can be created (if the guest has <optionref ref="bcapabilities">CAP_MKNOD</optionref>)</description>
128           </boolean>
129           <boolean id="vdevmap-remap" name="remap">
130             <description>
131 When this file exists, <optionref ref="vdevmap-target">target</optionref> will
132 have to exist as well and opening the device will in fact open the target device
133             </description>
134           </boolean>
135           <scalar name="flags">
136             <description>This file will let you specify unimplemented flags manually</description>
137           </scalar>
138           <scalar name="device">
139             <description>Contains the name of a device node</description>
140           </scalar>
141           <scalar id="vdevmap-target" name="target">
142             <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>
143           </scalar>
144         </collection>
145       </collection>
146
147       <collection name="vshelper">
148         <link name="logfile">
149           <description>
150 The file where output will be logged to when <tool>vshelper</tool>
151 is invoked from the kernel. This should point somewhere e.g. into
152 <directory>/var/log</directory>.
153           </description>
154         </link>
155
156         <collection name="vshelper-methods">
157           <program name="handler" type="symbolic">
158             <description>
159 See <optionref ref="vshelper-action">vshelper/action</optionref>.
160             </description>
161           </program>
162         </collection>
163
164         <boolean name="disabled">
165           <description>
166 When existing, the vshelper functionality will be disabled for all
167 vservers.
168           </description>
169         </boolean>
170
171         <boolean name="debug">
172           <description>
173 When existing, the vshelper execution will be traced.
174           </description>
175         </boolean>
176         
177         <boolean name="warning-disabled">
178           <description>
179 When existing, sanity checks for the vshelper functionality will be
180 skipped.
181           </description>
182         </boolean>
183
184       </collection>
185       
186       <collection name="vprocunhide">
187         <list name="files">
188           <description>
189 A list of files which will be made visible by vprocunhide. Wildcards are
190 allowed and anything ending in '/' will be processed recursively. When this file exists,
191 it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files. The entries there must be
192 absolute filenames inclusive the leading '/proc'.
193           </description>
194         </list>
195       </collection>
196       
197       <collection name="init">
198         <link name="tty">
199           <description>
200 A symlink to the TTY device where input/output will be redirected from/to
201 at startup via initscript.
202           </description>
203         </link>
204
205         <hash id="global-environment" name="environment" since="0.30.211">
206           <description>
207 The environment to set when starting guests. Contains one VAR=VAL
208 pair per line.
209           </description>
210         </hash>
211       </collection>
212       
213       <collection name="vunify">
214         <list name="exclude">
215           <description>Static list of excluded files.</description>
216         </list>
217
218         <collection name="hash" since="0.30.205">
219           <description>
220 A directory which will be used as the storage place for the
221 <tool>vhashify</tool> command.
222           </description>
223           <link name="id" type="symbolic">
224             <description>
225 Points to a directory within the filesystems which are used for the
226 vservers. There must be not more than one of such a directory per
227 filesystem.
228             </description>
229           </link>
230
231           <scalar name="method" since="0.30.299">
232             <default>SHA1</default>
233             <description>The used hash method.</description>
234           </scalar>
235         </collection>
236
237         <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
238           <description>
239 When existing, information from packagemanagement will not be used to
240 create dynamic exclude-lists.
241           </description>
242         </boolean>
243
244         <boolean name="pgkmgmt-force" default="off" since="0.30.205">
245           <description>
246 When existing, information from packagemanagement will be used to
247 create dynamic exclude-lists. This option requires that (a known)
248 packagemanagement is configured for the vserver; else the requested
249 operation will fail. Most tools assume 'on' as the default value.
250           </description>
251         </boolean>
252
253       </collection>
254
255       <collection name="vlogin">
256         <boolean id="vlogin-disable" name="disable" since="0.30.212">
257           <description>
258 When this file exists, vlogin isn't used on vserver &lt;guest&gt; enter.
259           </description>
260         </boolean>
261       </collection>
262
263       <collection name="build">
264         <list name="options">
265           <description>
266 A list of default options to supply to vserver ... build, one option per line.
267           </description>
268         </list>
269       </collection>
270     </collection>
271
272     <collection name="interfaces" use="optional">
273       <boolean id="global-vlandev" name="vlandev" since="0.30.211">
274         <description>
275 When this file exists, the steps which setup and destroy a VLAN
276 interface will be executed.
277         </description>
278       </boolean>
279     </collection>
280
281     <collection name="files">
282       <description>This directory contains some files which will be copied to the guests during build.</description>
283       <data name="hosts">
284         <description>The default /etc/hosts file.</description>
285       </data>
286       <data name="nsswitch.conf">
287         <description>The default /etc/nsswitch.conf file.</description>
288       </data>
289       <data name="krb5.conf">
290         <description>The default /etc/krb5.conf file.</description>
291       </data>
292       <data name="krb.conf">
293         <description>The default /etc/krb.conf file.</description>
294       </data>
295       <data name="krb.realms">
296         <description>The default /etc/krb.realms file.</description>
297       </data>
298       <data name="ldap.conf">
299         <description>The default /etc/ldap.conf file.</description>
300       </data>
301       <data name="localtime">
302         <description>The default /etc/localtime file.</description>
303       </data>
304       <data name="resolv.conf">
305         <description>The default /etc/resolv.conf file.</description>
306       </data>
307     </collection>
308   </collection>
309     
310   <collection name=".distributions" use="optional">
311     <collection name="dist" type="symbolic">
312       <scalar name="dev">
313         <description></description>
314       </scalar>
315       <collection name="yum">
316         <description>
317 The default, yum-related content of the <directory>/etc</directory>
318 directory.
319         </description>
320         <scalar name="yum.conf">
321           <description>
322 The master yum configuration file. It supports the @YUMETCDIR@,
323 @YUMCACHEDIR@ and @YUMLOGDIR@ placeholder which will be replaced at
324 <command>vserver ... build</command> time.
325           </description>
326         </scalar>
327       </collection>
328       <collection name="yum.repos.d">
329         <description>A directory with yum repositories.</description>
330       </collection>
331       <data name="apt.conf">
332         <description>
333 The default apt.conf which is going to be used. It overrides the
334 apt.conf from CONFDIR/.defaults/apps/pkgmgmt.
335         </description>
336       </data>
337       <program name="initpre">
338         <description>
339 Script which will be executed before packages will be installed.
340           </description>
341         <parameterList>
342           <parameter name="confdir">
343             <description>
344 The configuration directory of the vserver which is going to be set up.
345             </description>
346           </parameter>
347           <parameter name="util-vserver-vars">
348             <description>
349 The pathname of the util-vserver-vars file.
350             </description>
351           </parameter>
352         </parameterList>
353       </program>
354       <program name="initpost">
355         <description>
356 Script which will be executed after packages are installed.
357           </description>
358         <parameterList>
359           <parameter name="confdir">
360             <description>
361 The configuration directory of the vserver which is going to be set up.
362             </description>
363           </parameter>
364           <parameter name="vserver">
365             <description>
366 The pathname of the util-vserver-vars file.
367             </description>
368           </parameter>
369         </parameterList>
370       </program>
371       
372       <collection name="pkgs">
373         <description>
374 Contains files with packagenames.
375         </description>
376         <list name="list">
377           <description>
378 File which contains the name of packages. On top of file the special
379 keywords '--reinstall' and '--can-fail' are possible.
380           </description>
381         </list>
382       </collection>
383       
384       <collection name="pubkeys">
385         <description>
386 Directory with GPG pubkeys which are used to sign the packages of this
387 distribution.
388         </description>
389       </collection>
390       
391       <collection name="apt">
392         <description>
393 Default content of the <directory>/etc/apt/</directory> directory.
394         </description>
395       </collection>
396       
397       <collection name="rpm">
398         <description>
399 Default content of the <directory>/etc/rpm</directory> directory.
400         </description>
401       </collection>
402       
403       <link name="rpmlib">
404         <description>
405 Directory which overrides <directory>/usr/lib/rpm</directory>.
406         </description>
407       </link>
408       <link name="execdir">
409         <description>
410 Directory with all executables and libraries which are required for
411 this distribution.
412         </description>
413       </link>
414     </collection>
415     <link name="template">
416       <description>
417 Symlink to the default template for this distribution.
418       </description>
419     </link>
420   </collection>
421   
422   <!-- Vserver configuration -->
423   <collection name="vserver-name" type="symbolic">
424     <description>
425 The configuration directory for the vserver vserver-name.
426     </description>
427
428     <link name="cache">
429       <default>../.defaults/cachebase/VSERVERNAME</default>
430       <description>
431 Path of the storage area for cached information about this vserver.
432       </description>
433     </link>
434     
435     <link name="vdir">
436       <default>../.defaults/vdirbase/VSERVERNAME</default>
437       <description>
438 Path of the vserver root directory.
439       </description>
440     </link>
441
442     <link name="run">
443       <description>
444 Points to a file which will contain the XID of the running vserver. When
445 the vserver is stopped, this can be a dangling symlink.
446       </description>
447     </link>
448
449     <list id="bcapabilities" name="bcapabilities">
450       <description>
451 Contains the system capabilities. See
452 <ulink url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/bcaps-v13.c">lib/bcaps-v13.c</ulink>
453 for possible values.
454       </description>
455     </list>
456     <list name="ccapabilities">
457       <description>
458 Contains the context capabilities. See <ulink
459 url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/ccaps-v13.c">lib/ccaps-v13.c</ulink>
460 for possible values.
461       </description>
462     </list>
463     <list name="ncapabilities" since="0.30.212">
464       <description>
465 Contains the network capabilities. See <ulink
466 url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/ncaps-net.c">lib/ncaps-net.c</ulink>
467 for possible values.
468       </description>
469     </list>
470
471     <boolean id="global-namespace" name="namespace">
472       <description>
473 Overrides the global <optionref ref="global-nonamespace">nonamespace</optionref> flag and enables
474 namespace usage for the current vserver.
475       </description>
476     </boolean>
477
478     <boolean name="nonamespace">
479       <description>
480 Disables namespace usage for the current vserver.
481
482 In this mode the <directory>/vservers</directory> directory must have
483 the 'barrier' attribute. Else, common chroot(2) exploits are possible.
484       </description>
485     </boolean>
486
487     <boolean id="namespace-cleanup" name="namespace-cleanup">
488       <description>
489 Overrides the global <optionref ref="global-nonamespace-cleanup">nonamespace-cleanup</optionref> flag and enables
490 namespace cleanup for the current vserver.
491       </description>
492     </boolean>
493
494     <list name="namespace-cleanup-skip">
495       <description>
496 List of paths to skip during namespace cleanup. This overrides the global
497 <optionref ref="global-namespace-cleanup-skip">namespace-cleanup-skip</optionref>
498 file.
499       </description>
500     </list>
501
502     <hash name="schedule">
503       <description>
504 [deprecated; use <optionref ref="sched">sched</optionref> instead] Contains the
505 scheduler parameters, one per line.
506
507 The Hard CPU limit uses a mechanism called a Token Bucket.  the
508 concept is simple: you have a bucket of a certain size which is
509 filled with a specified amount R of tokens each interval T until the
510 maximum is reached (excess tokens are spilled). At each timer tick,
511 a running process consumes one token from the bucket, unless the
512 bucket is empty. If the bucket is empty the process is put in the
513 hold queue. When the bucket has been refilled to at least M tokens,
514 all on hold processes are rescheduled.
515
516 See the <ulink url="http://linux-vserver.org/Scheduler+Parameters">Linux
517 VServer Wiki</ulink> for more information about this file.
518       </description>
519       <keys>
520         <key id="fill_rate" name="fill-rate">
521           <description>
522 Amount of tokens append to the bucket each interval.
523             </description>
524         </key>
525         <key name="interval">
526           <description>
527 The intervall between refills of amount <optionref>fill_rate</optionref>. This
528 value is express in ticks.
529           </description>
530         </key>
531         <key name="tokens">
532           <description>
533 Initial bucket contents.
534           </description>
535         </key>
536         <key name="tokens-min">
537           <description>
538 The minimum amount of tokens required to unhold processes
539           </description>
540         </key>
541         <key name="tokens-max">
542           <description>
543 The bucket size.
544           </description>
545         </key>
546         <key name="priority-bias">
547           <description>
548 ???
549           </description>
550         </key>
551       </keys>
552     </hash>
553     <scalar name="name">
554       <description>
555 Contains the name of the vserver. When not given, the basename of the directory
556 will be assumed as this name.
557       </description>
558     </scalar>
559     <scalar name="nice">
560       <description>
561 The nice-level on which the vserver will be started.
562       </description>
563     </scalar>
564     <list name="capabilities">
565       <description>
566 Contains per line a capability. This file is used for the 2.4 kernel
567 only; for 2.6 use <optionref>bcapabilities</optionref>.
568       </description>
569     </list>
570     <scalar id="shell" name="shell">
571       <description>
572 Contains the pathname of the shell which will be used by the "vserver
573 ... enter" command.
574       </description>
575     </scalar>
576     <list name="personality">
577       <description>
578 Used to set the personality of the vserver. First line in the file
579 is the personality-type followed by flags (one item per line). See
580 <filename>/usr/include/linux/personality.h</filename> for possible
581 values.
582       </description>
583     </list>
584     <list name="flags">
585       <description>
586 Contains per line a flag. See <ulink
587 url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/cflags-v13.c">lib/cflags-v13.c</ulink>
588 for possible values.
589       </description>
590       <!--
591       <elements>
592         <element name="fakeinit">
593           <description>
594 The new process will believe it is process number 1. Useful to run a
595 real /sbin/init in a vserver. Warning: this flag should not be used
596 unless you know what you are doing. Often, it is better to use the
597 'plain' initstyle.
598           </description>
599         </element>
600         <element name="lock">
601           <description>
602 The new process is trapped and can't use chcontext anymore.
603           </description>
604         </element>
605         <element name="sched">
606           <description>
607 The new process and its children will share a common
608           </description>
609         </element>
610         <element name="nproc">
611           <description>
612 Limit the number of process in the vserver according to
613 ulimit setting. Normally, ulimit is a per user thing.
614 With this flag, it becomes a per vserver thing.
615           </description>
616         </element>
617         <element name="private">
618           <description>
619 No one can join this security context once created.
620           </description>
621         </element>
622         <element name="ulimit">
623           <description>
624 Apply the current ulimit to the whole context
625           </description>
626         </element>
627       </elements>
628       -->
629     </list>
630     <list name="nflags" since="0.30.212">
631       <description>
632 Contains a network flag per line. See <ulink
633 url="http://svn.linux-vserver.org/svn/util-vserver/trunk/lib/nflags-net.c">lib/nflags-net.c</ulink>
634 for possible values.
635       </description>
636     </list>
637     <scalar name="context">
638       <description>
639 Contains the context id which shall be used for the vserver. Valid range is 2 through 49151.
640         </description>
641     </scalar>
642     <scalar name="ncontext">
643       <description>
644 Contains the network context id which shall be used for the vserver. Valid range is 2 through 49151.
645       </description>
646     </scalar>
647     <scalar name="tag">
648       <description>
649 Contains the filesystem tag which shall be used for the vserver. Valid range is 2 through 49151.
650       </description>
651     </scalar>
652     <data id="fstab" name="fstab">
653       <description>
654 The fstab file for the vserver. Entries in this file will be mounted
655 within the network context of the host. Use the
656 <optionref>fstab.remote</optionref> file when you want that the
657 mounting happens in the network context of the vserver. In most cases
658 the 'fstab' file should be used.
659       </description>
660     </data>
661     <data id="fstab.remote" name="fstab.remote">
662       <description>
663 The fstab file for the vserver. Entries in this file will be mounted
664 within the network context of the guest; this means that mount will be
665 called as <command>chbind &lt;options&gt; mount ...</command>. See
666 <optionref>fstab</optionref> also.
667       </description>
668     </data>
669     <scalar name="badness">
670       <description>
671 Contains the bias to be applied to processes in this guest when the OOM-killer strikes.
672       </description>
673     </scalar>
674     
675     <collection name="apps">
676       <collection name="init">
677         <data name="mtab">
678           <description>
679 The initial-mtab which will be used for the vserver.
680           </description>
681         </data>
682         
683         <scalar name="style">
684           <description>
685 Contains the init-style.
686           </description>
687           <restriction>
688             <enumeration value="sysv"/>
689             <enumeration value="plain"/>
690             <enumeration value="minit"/>
691           </restriction>
692         </scalar>
693         
694         <scalar name="runlevel">
695           <description>The start runlevel.</description>
696         </scalar>
697         
698         <scalar name="runlevel.start">
699           <description>The start runlevel.</description>
700         </scalar>
701         
702         <scalar name="runlevel.stop">
703           <description>The stop runlevel.</description>
704         </scalar>
705         
706         <scalar name="killseq">
707           <description>
708 Contains the 'signal [wait signal]*' sequence which is used to stop
709 the vserver.
710           </description>
711         </scalar>
712         
713         <list name="cmd.start">
714           <description>
715 The command which is used to start the vserver. Each option must be on
716 a separate line.
717           </description>
718         </list>
719         
720         <list name="cmd.start-sync">
721           <description>
722 The command which is used to wait on the vserver after it has been
723 started. Each option must be on a separate line. This file will be
724 ignored when the <optionref>sync</optionref> flag does not exist and the
725 '--sync' option was not used.
726           </description>
727         </list>
728         
729         <list name="cmd.stop">
730           <description>
731 The command which is used to stop the vserver. Each option must be on
732 a separate line.
733           </description>
734         </list>
735         
736         <list name="cmd.stop-sync">
737           <description>
738 The command which is used to wait on the vserver after it has been
739 stopped. Each option must be on a separate line. This file will be
740 ignored when the <optionref>sync</optionref> flag does not exist and the
741 '--sync' option was not used.
742           </description>
743         </list>
744         
745         <list name="cmd.prepare">
746           <description>
747 The command which is used to setup the init-system (e.g. to set the
748 runlevel in the utmp-file). Each option must be on a separate line.
749           </description>
750         </list>
751         
752         <boolean id="sync" name="sync">
753           <description>
754 If this file is not present, all 'cmd.*-sync files will be ignored.
755             </description>
756         </boolean>
757         
758         <link name="tty">
759           <description>
760 A symlink to the TTY device where input/output will be redirected
761 from/to at startup via initscript.
762           </description>
763         </link>
764         
765         <scalar name="mark">
766           <description>
767 This file is used to mark group of vservers which shall be started/stopped
768 together by the initscript. Content is a simple string like 'default'.
769           </description>
770         </scalar>
771         
772         <list name="depends">
773           <description>
774 This file is used to configure vservers which must be running before
775 the current vserver can be started. At shutdown, the current vserver
776 will be stopped before its dependencies. Content of this file are
777 vserver ids (one name per line).
778           </description>
779         </list>
780
781         <hash name="environment" since="0.30.211">
782           <description>
783 The environment to set when starting the guest. Contains one VAR=VAL
784 pair per line.
785           </description>
786         </hash>
787       </collection>
788
789       <collection name="vdevmap">
790         <collection name="x" type="sybmolic">
791           <description>'x' is an arbitrary name, replace it with e.g. device names</description>
792           <boolean name="open">
793             <description>When this file exists, the device can be opened</description>
794           </boolean>
795           <boolean name="create">
796             <description>When this file exists, the device can be created (if the guest has <optionref ref="bcapabilities">CAP_MKNOD</optionref>)</description>
797           </boolean>
798           <boolean id="guest-vdevmap-remap" name="remap">
799             <description>
800 When this file exists, <optionref ref="guest-vdevmap-target">target</optionref> will
801 have to exist as well and opening the device will in fact open the target device
802             </description>
803           </boolean>
804           <scalar name="flags">
805             <description>This file will let you specify unimplemented flags manually</description>
806           </scalar>
807           <scalar name="device">
808             <description>Contains the name of a device node</description>
809           </scalar>
810           <scalar id="guest-vdevmap-target" name="target">
811             <description>Contains the device node of the target node to open instead of the device when <optionref ref="guest-vdevmap-remap">remap</optionref> is set</description>
812           </scalar>
813         </collection>
814       </collection>
815   
816       <collection name="vshelper">
817         <scalar name="sync-timeout">
818           <default>30</default>
819           <description>
820 The timeout in seconds which is used when synchronising vserver
821 startup/shutdown with the vshelper. When not set, 30 seconds will be
822 assumed.
823           </description>
824         </scalar>
825         
826         <scalar id="vshelper-action" name="action">
827           <default>restart</default>
828           <description>
829 The action which is going to be executed when a vshelper event
830 occurs. The default value is 'restart', but there can be defined own
831 methods by placing scripts into the
832 <optionref>vshelper-methods</optionref> directories. These scripts are
833 fed with the same arguments as the <tool>vshelper</tool> script.
834           </description>
835         </scalar>
836         
837         <program name="event" type="symbolic">
838           <description>
839 When existing, these scripts will be executed *instead* of the default
840 handler defined in 'action'. Their name must match the event which caused
841 the execution of <tool>vshelper</tool>; e.g. 'restart' or 'poweroff'. See
842 the vs_reboot() function in the kernel for more details.
843           </description>
844           <parameterList>
845             <parameter name="xid">
846               <description>
847 The xid of the context calling the vshelper
848               </description>
849             </parameter>
850             <parameter name="event">
851               <description>
852 The reboot-event.
853               </description>
854             </parameter>
855           </parameterList>
856         </program>
857         
858         <boolean name="disabled">
859           <description>
860 When existing, the vshelper functionality will be disabled for this
861 vserver.
862           </description>
863         </boolean>
864
865         <boolean name="debug">
866           <description>
867 When existing, the vshelper execution will be traced for this vserver.
868           </description>
869         </boolean>
870         
871         <boolean name="warning-disabled">
872           <description>
873 When existing, sanity checks for the vshelper functionality will be
874 skipped.
875           </description>
876         </boolean>
877         
878       </collection>
879       
880       <collection id="vshelper-methods" name="vshelper-methods">
881         <program name="handler" type="symbolic">
882           <description>
883 See <optionref ref="vshelper-action">vshelper/action</optionref>.
884           </description>
885         </program>
886       </collection>
887       
888       <collection name="vunify">
889         <description>
890 This directory contains configuration data required for vserver
891 unification.
892         </description>
893         
894         <list name="exclude">
895           <description>
896 <p>Static list of files which are excluded for unification. This list
897 supports an rsync-like syntax: when a file is prefixed by '+', it is a
898 candidate for unification; when there is no prefix or a '-' or a '~' it
899 will be excluded. Shell-wildcards are allowed for the filenames.</p>
900 <p>When used with <tool>vcopy</tool>, the '~' prefix prevents copying
901 of the file entirely (e.g. for keyfiles). With this tool, the file will
902 be copied instead of hardlinked when the '-' prefix is used.</p>
903           </description>
904         </list>
905         
906         <link name="refserver.X" type="symbolic">
907           <description>
908 These are symlinks to the configuration directory
909 (e.g. CONFDIR/vservers/&lt;id&gt;) of a refserver. There may be
910 multiple such symlinks but they must be prefixed by 'refserver.' and
911 will be processed in alphanumerical order.
912           </description>
913         </link>
914
915         <collection name="hash" since="0.30.205">
916           <description>
917 A directory which will be used as the storage place for the
918 <tool>vhashify</tool> command.
919           </description>
920           <link name="id" type="symbolic">
921             <description>
922 Points to a directory within the filesystems which are used for the
923 vservers. There must be not more than one of such a directory per
924 filesystem.
925             </description>
926           </link>
927
928           <scalar name="method"  since="0.30.299">
929             <default>SHA1</default>
930             <description>The used hash method.</description>
931           </scalar>
932         </collection>
933
934         <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
935           <description>
936 When existing, information from packagemanagement will not be used to
937 create dynamic exclude-lists.
938           </description>
939         </boolean>
940
941         <boolean name="pgkmgmt-force" default="off" since="0.30.205">
942           <description>
943 When existing, information from packagemanagement will be used to
944 create dynamic exclude-lists. This option requires that (a known)
945 packagemanagement is configured for the vserver; else the requested
946 operation will fail. Most tools assume 'on' as the default value.
947           </description>
948         </boolean>
949         
950       </collection>
951     </collection>
952     
953     <collection name="scripts">
954       <description>
955 A directory for scripts. By default, when one of these scripts will be
956 executed, the execution of defaultscripts (within .../.defaults/scripts)
957 will be skipped. To execute them nevertheless, the $DONT_SKIP_DEFAULTS
958 environment variable must be set by one of the in-shellcontext scripts
959 (the non-executable ones).
960       </description>
961       
962       <program name="initialize" since="0.30.211">
963         <description>
964 The scriptlet which will be executed before the root filesystem is mounted and
965 the configuration has been loaded. Before executing the script, the
966 configuration directory will be made the working directory.
967         </description>
968         <parameterList>
969           <parameter name="action">
970             <description>
971 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
972             </description>
973           </parameter>
974           <parameter name="vserver-name">
975             <description>
976 The name of the current vserver.
977             </description>
978           </parameter>
979         </parameterList>
980       </program>
981       <collection name="initialize.d" since="0.30.211">
982         <description>
983 Repository of initialize like scripts.  Before executing the script,
984 the configuration directory will be made the working directory.
985         </description>
986         <program name="script" type="symbolic">
987           <description>See initialize.</description>
988           <parameterList>
989             <parameter name="action">
990               <description>
991 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
992               </description>
993             </parameter>
994             <parameter name="vserver-name">
995               <description>
996 The name of the current vserver.
997               </description>
998             </parameter>
999           </parameterList>
1000         </program>
1001       </collection>
1002       
1003       <program name="prepre-start">
1004         <description>
1005 The scriptlet which will be executed before the network-interfaces are
1006 enabled and the directories are mounted. Before executing the script,
1007 the configuration directory will be made the working directory.
1008         </description>
1009         <parameterList>
1010           <parameter name="action">
1011             <description>
1012 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1013             </description>
1014           </parameter>
1015           <parameter name="vserver-name">
1016             <description>
1017 The name of the current vserver.
1018             </description>
1019           </parameter>
1020         </parameterList>
1021       </program>
1022       <collection name="prepre-start.d">
1023         <description>
1024 Repository of prepre-start like scripts.  Before executing the script,
1025 the configuration directory will be made the working directory.
1026         </description>
1027         <program name="script" type="symbolic">
1028           <description>See prepre-start.</description>
1029           <parameterList>
1030             <parameter name="action">
1031               <description>
1032 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1033               </description>
1034             </parameter>
1035             <parameter name="vserver-name">
1036               <description>
1037 The name of the current vserver.
1038               </description>
1039             </parameter>
1040           </parameterList>
1041         </program>
1042       </collection>
1043       
1044       <program name="pre-start">
1045         <description>
1046 The scriptlet which will be executed after network-interfaces were
1047 enabled and the directories mounted, but before the vserver itself has
1048 been started.  Before executing the script, the vserver root directory
1049 will be made the working directory.
1050         </description>
1051         <parameterList>
1052           <parameter name="action">
1053             <description>
1054 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1055             </description>
1056           </parameter>
1057           <parameter name="vserver-name">
1058             <description>
1059 The name of the current vserver.
1060             </description>
1061           </parameter>
1062         </parameterList>
1063       </program>
1064       <collection name="pre-start.d">
1065         <description>
1066 Repository of pre-start like scripts. Before executing these scripts,
1067 the vserver root directory will be made the working directory.
1068         </description>
1069         <program name="script" type="symbolic">
1070           <description>See pre-start.</description>
1071           <parameterList>
1072             <parameter name="action">
1073               <description>
1074 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1075               </description>
1076             </parameter>
1077             <parameter name="vserver-name">
1078               <description>
1079 The name of the current vserver.
1080               </description>
1081             </parameter>
1082           </parameterList>
1083         </program>
1084       </collection>
1085       
1086
1087       <program name="post-start">
1088         <description>
1089 The scriptlet which will be executed after the vserver has been
1090 started. Before executing the script, the vserver root directory
1091 will be made the working directory.
1092         </description>
1093         <parameterList>
1094           <parameter name="action">
1095             <description>
1096 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1097             </description>
1098           </parameter>
1099           <parameter name="vserver-name">
1100             <description>
1101 The name of the current vserver.
1102             </description>
1103           </parameter>
1104         </parameterList>
1105       </program>
1106       <collection name="post-start.d">
1107         <description>
1108 Repository of post-start like scripts. Before executing these scripts,
1109 the vserver root directory will be made the working directory.
1110         </description>
1111         <program name="script" type="symbolic">
1112           <description>See post-start.</description>
1113           <parameterList>
1114             <parameter name="action">
1115               <description>
1116 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1117               </description>
1118             </parameter>
1119             <parameter name="vserver-name">
1120               <description>
1121 The name of the current vserver.
1122               </description>
1123             </parameter>
1124           </parameterList>
1125         </program>
1126       </collection>
1127
1128
1129       <program name="pre-stop">
1130         <description>
1131 The scriptlet which will be executed before the vserver will be
1132 stopped. Before executing the script, the vserver root directory
1133 will be made the working directory.
1134         </description>
1135         <parameterList>
1136           <parameter name="action">
1137             <description>
1138 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1139             </description>
1140           </parameter>
1141           <parameter name="vserver-name">
1142             <description>
1143 The name of the current vserver.
1144             </description>
1145           </parameter>
1146         </parameterList>
1147       </program>
1148       <collection name="pre-stop.d">
1149         <description>
1150 Repository of pre-stop like scripts. Before executing the script, the
1151 vserver root directory will be made the working directory.
1152         </description>
1153         <program name="script" type="symbolic">
1154           <description>See pre-stop.</description>
1155           <parameterList>
1156             <parameter name="action">
1157               <description>
1158 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1159               </description>
1160             </parameter>
1161             <parameter name="vserver-name">
1162               <description>
1163 The name of the current vserver.
1164               </description>
1165             </parameter>
1166           </parameterList>
1167         </program>
1168       </collection>
1169
1170       <program name="post-stop">
1171         <description>
1172 The scriptlet which will be executed after the vserver has been
1173 stopped, but before the directories will be umounted and the the
1174 interfaces disabled. Before executing the script, the vserver root
1175 directory will be made the working directory.
1176         </description>
1177         <parameterList>
1178           <parameter name="action">
1179             <description>
1180 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1181             </description>
1182           </parameter>
1183           <parameter name="vserver-name">
1184             <description>
1185 The name of the current vserver.
1186             </description>
1187           </parameter>
1188         </parameterList>
1189       </program>
1190       <collection name="post-stop.d">
1191         <description>
1192 Repository of post-stop like scripts. Before executing the script, the
1193 vserver root directory will be made the working directory.
1194         </description>
1195         <program name="script" type="symbolic">
1196           <description>See post-stop.</description>
1197           <parameterList>
1198             <parameter name="action">
1199               <description>
1200 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1201               </description>
1202             </parameter>
1203             <parameter name="vserver-name">
1204               <description>
1205 The name of the current vserver.
1206               </description>
1207             </parameter>
1208           </parameterList>
1209         </program>
1210       </collection>
1211       
1212       <program name="postpost-stop">
1213         <description>
1214 The scriptlet which will be executed after the vserver has been stopped
1215 completely. Before executing the script, the vserver root directory
1216 will be made the working directory.
1217         </description>
1218         <parameterList>
1219           <parameter name="action">
1220             <description>
1221 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1222             </description>
1223           </parameter>
1224           <parameter name="vserver-name">
1225             <description>
1226 The name of the current vserver.
1227             </description>
1228           </parameter>
1229         </parameterList>
1230       </program>
1231       <collection name="postpost-stop.d">
1232         <description>
1233 Repository of postpost-stop like scripts. Before executing the script,
1234 the vserver root directory will be made the working directory.
1235         </description>
1236         <program name="script" type="symbolic">
1237           <description>See postpost-stop.</description>
1238           <parameterList>
1239             <parameter name="action">
1240               <description>
1241 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1242               </description>
1243             </parameter>
1244             <parameter name="vserver-name">
1245               <description>
1246 The name of the current vserver.
1247               </description>
1248             </parameter>
1249           </parameterList>
1250         </program>
1251       </collection>
1252     </collection>
1253     
1254     <collection name="interfaces">
1255       <scalar name="bcast">
1256         <description>The guest's broadcast address.</description>
1257       </scalar>
1258       <scalar name="lback">
1259         <description>The guest's loopback address.</description>
1260       </scalar>
1261       <scalar name="dev">
1262         <description>The default network device. See <optionref ref="per-if-dev">iface/dev</optionref> for more information.</description>
1263       </scalar>
1264       <scalar name="prefix">
1265         <description>The default network prefix-length.</description>
1266       </scalar>
1267       <scalar name="mask">
1268         <description>The default network mask.</description>
1269       </scalar>
1270       <scalar name="scope">
1271         <description>The default scope of the network interfaces.</description>
1272       </scalar>
1273       <boolean id="local-vlandev" name="vlandev" since="0.30.211">
1274         <description>
1275 When this file exists, the steps which setup and destroy a VLAN
1276 interface will be executed for all interfaces of this vserver.
1277         </description>
1278       </boolean>
1279       <boolean id="local-novlandev" name="novlandev">
1280         <description>
1281 When this file exists, the steps which setup and destroy a VLAN
1282 interface will be skipped. This overrides the global
1283 <optionref ref="global-vlandev">vlandev</optionref> setting for
1284 this vserver.
1285         </description>
1286       </boolean>
1287       
1288       <collection name="iface" type="symbolic">
1289         <description>
1290 'iface' is an arbitrary name for the interface; the value itself is
1291 not important but may be interesting regarding interface-creation and
1292 usage with <tool>chbind</tool>. Both happens in alphabetical order and
1293 numbers like '00' are good names for these directories.
1294         </description>
1295         
1296         <boolean name="disabled">
1297           <description>When this file exists, this interface will be ignored.</description>
1298         </boolean>
1299         
1300         <scalar name="ip">
1301           <description>The IP address which will be assigned to this interface.</description>
1302         </scalar>
1303         <scalar name="dev" id="per-if-dev">
1304           <description>The network device. When this is specified, the IP address will be assigned and removed when starting and stopping the guest.</description>
1305         </scalar>
1306         <scalar name="prefix">
1307           <description>The network prefix-length.</description>
1308         </scalar>
1309         <scalar name="mask">
1310           <description>The network mask.</description>
1311         </scalar>
1312         <scalar name="scope">
1313           <description>The scope of the network interface.</description>
1314         </scalar>
1315         <scalar name="name">
1316           <description>
1317 When this file exists, the interface will be named with the text in
1318 this file. Without such an entry, the IP will not be shown by
1319 <tool>ifconfig</tool> but by <command>ip addr ls</command> only.  Such
1320 a labeled interface is known as an "alias" also (e.g. 'eth0:foo').
1321           </description>
1322         </scalar>
1323         <boolean name="nodev">
1324           <description>
1325 When this file exists, the interface will be assumed to exist
1326 already. This can be used to assign primary interfaces which are
1327 created by the host or another vserver.
1328           </description>
1329         </boolean>
1330         <boolean name="novlandev">
1331           <description>
1332 When this file exists, the steps which setup and destroy a VLAN
1333 interface will be skipped. This will override the global
1334 <optionref ref="global-vlandev">vlandev</optionref> and the per-guest
1335 <optionref ref="local-vlandev">vlandev</optionref>.
1336           </description>
1337         </boolean>
1338         <boolean name="vlandev" since="0.30.211">
1339           <description>
1340 When this file exists, the steps which setup and destroy a VLAN
1341 interface will be executed.
1342           </description>
1343         </boolean>
1344         <boolean name="tun" since="0.30.215">
1345           <description>
1346 When this file exists, a tun interface will be created when the guest
1347 starts, and removed when the guest stops.
1348           </description>
1349         </boolean>
1350         <boolean name="tap" since="0.30.215">
1351           <description>
1352 When this file exists, a tap interface will be created when the guest
1353 starts, and removed when the guest stops.
1354           </description>
1355         </boolean>
1356         <boolean name="nocsum" since="0.30.215">
1357           <description>
1358 If a tun or tap interface is created, the presence of this file will
1359 disable checksumming on it.
1360           </description>
1361         </boolean>
1362         <boolean name="shared" since="0.30.215">
1363           <description>
1364 When this file exists, the tun/tap interface created will not be
1365 owned by this particular guest.
1366           </description>
1367         </boolean>
1368         <scalar name="uid" since="0.30.215">
1369           <description>
1370 Sets the ownership of tun/tap interfaces. Requires a user id, not a
1371 username.
1372           </description>
1373         </scalar>
1374         <scalar name="gid" since="0.30.215">
1375           <description>
1376 Sets the group ownership of tun/tap interfaces. Requires a group id,
1377 not a group name.
1378           </description>
1379         </scalar>
1380         <scalar name="linktype" since="0.30.215">
1381           <description>
1382 Sets the link type of tun/tap interfaces.
1383           </description>
1384         </scalar>
1385         <scalar name="peer" since="0.30.216">
1386           <description>
1387 Sets the peer for a point-to-point link, such as a tun interface.
1388           </description>
1389         </scalar>
1390       </collection>
1391     </collection>
1392     
1393     <collection name="ulimits">
1394       <description>
1395 A directory with ulimits. Possible resources are cpu, data, fsize,
1396 locks, memlock, nofile, nproc, rss and/or stack.
1397       </description>
1398       <scalar name="resource" type="symbolic">
1399         <description>
1400 A file which contains the hard- and soft-limit of the given resource
1401 in the first line. The special keyword 'inf' is recognized.
1402         </description>
1403       </scalar>
1404       <scalar name="resource.hard" type="symbolic">
1405         <description>
1406 A file which contains the hard-limit of the given resource in the first
1407 line. The special keyword 'inf' is recognized.
1408         </description>
1409       </scalar>
1410       <scalar name="resource.soft" type="symbolic">
1411         <description>
1412 A file which contains the soft-limit of the given resource in the first
1413 line. The special keyword 'inf' is recognized.
1414         </description>
1415       </scalar>
1416     </collection>
1417     
1418     <collection name="rlimits">
1419       <description>
1420 A directory with resource limits. Possible resources are cpu, fsize,
1421 data, stack, core, rss, nproc, nofile, memlock, as, locks, msgqueue,
1422 nsock, openfd, anon, shmem, semary, nsems and dentry. This
1423 configuration will be honored for kernel 2.6 only.
1424       </description>
1425       <scalar name="resource" type="symbolic">
1426         <description>
1427 A file which contains the hard- and soft-limit of the given resource
1428 in the first line. The special keyword 'inf' is recognized.
1429         </description>
1430       </scalar>
1431       <scalar name="resource.hard" type="symbolic">
1432         <description>
1433 A file which contains the hard-limit of the given resource in the first
1434 line. The special keyword 'inf' is recognized.
1435         </description>
1436       </scalar>
1437       <scalar name="resource.soft" type="symbolic">
1438         <description>
1439 A file which contains the soft-limit of the given resource in the first
1440 line. The special keyword 'inf' is recognized.
1441         </description>
1442       </scalar>
1443       <scalar name="resource.min" type="symbolic">
1444         <description>
1445 A file which contains the guaranteed minimum of the given resource in
1446 the first line. The special keyword 'inf' is recognized.
1447         </description>
1448       </scalar>
1449     </collection>
1450     
1451     <collection name="uts">
1452       <scalar name="context">
1453         <description>
1454 The context-name of the vserver. This file is listed for completeness
1455 only; the 'context' name is used and set internally by the util-vserver
1456 tools and can *not* be modified.
1457         </description>
1458       </scalar>
1459       <scalar name="sysname">
1460         <description>The sysname of the vserver</description>
1461       </scalar>
1462       <scalar name="nodename">
1463         <description>The node-/hostname of the vserver</description>
1464       </scalar>
1465       <scalar name="release">
1466         <description>The OS-release of the vserver</description>
1467       </scalar>
1468       <scalar name="version">
1469         <description>The OS-version of the vserver</description>
1470       </scalar>
1471       <scalar name="machine">
1472         <description>The machine-type of the vserver</description>
1473       </scalar>
1474       <scalar name="domainname">
1475         <description>The NIS domainname of the vserver</description>
1476       </scalar>
1477     </collection>
1478
1479     <collection name="dlimits" since="0.30.210">
1480       <description>
1481 Note that all entries are required for the disk limit to be applied.
1482       </description>
1483       <collection name="x" type="symbolic">
1484         <description>'x' is an arbitrary name, replace it with e.g. integers</description>
1485         <scalar name="directory">
1486           <description>The directory to which the limit should be applied</description>
1487         </scalar>
1488         <scalar name="inodes_total">
1489           <description>The amount of inodes this vserver should be limited to</description>
1490         </scalar>
1491         <scalar name="space_total">
1492           <description>The amount of space this vserver should be limited to (measured in blocks of 1024 bytes)</description>
1493         </scalar>
1494         <scalar name="reserved">
1495           <description>How much space (percentage-wise) should be reserved for the root user</description>
1496         </scalar>
1497       </collection>
1498     </collection>
1499
1500     <collection name="sysctl" since="0.30.213">
1501       <collection name="x" type="symbolic">
1502         <description>'x' is an arbitrary name, replace it with e.g. integers</description>
1503         <scalar name="setting">
1504           <description>The sysctl setting</description>
1505         </scalar>
1506         <scalar name="value">
1507           <description>The value</description>
1508         </scalar>
1509       </collection>
1510     </collection>
1511
1512     <collection name="cpuset" since="0.30.211">
1513       <description>
1514 Puts the guest in a cpuset. Required entries are name, cpus and mems.
1515       </description>
1516       <scalar name="name">
1517         <description>The name of the cpuset for this vserver</description>
1518       </scalar>
1519       <scalar name="cpus">
1520         <description>The list of CPUs in this cpuset</description>
1521       </scalar>
1522       <scalar name="mems">
1523         <description>The list of Memory Nodes in this cpuset</description>
1524       </scalar>
1525       <scalar name="cpu_exclusive">
1526         <description>Is the CPU assignment exclusive?</description>
1527       </scalar>
1528       <scalar name="mems_exclusive">
1529         <description>Is the memory node assignment exclusive?</description>
1530       </scalar>
1531       <scalar name="nocreate">
1532         <description>When this file exists, the cpuset will be assumed to exist already</description>
1533       </scalar>
1534     </collection>
1535
1536     <collection id="sched" name="sched" since="0.30.212">
1537       <scalar id="global-tokens" name="tokens">
1538         <description>The initial amount of tokens to put in the bucket</description>
1539       </scalar>
1540       <scalar id="global-tokens-min" name="tokens-min">
1541         <description>The minimum amount of tokens required to unhold the context</description>
1542       </scalar>
1543       <scalar id="global-tokens-max" name="tokens-max">
1544         <description>The bucket's size</description>
1545       </scalar>
1546       <scalar id="global-fill-rate" name="fill-rate">
1547         <description>Amount of tokens to add each <optionref ref="global-interval">interval</optionref></description>
1548       </scalar>
1549       <scalar id="global-interval" name="interval">
1550         <description>The interval between refills of the bucket</description>
1551       </scalar>
1552       <scalar id="global-priority-bias" name="priority-bias">
1553         <description>Bias added to priorities calculated within the guest (result is clamped to -20/+19)</description>
1554       </scalar>
1555       <scalar id="global-fill-rate2" name="fill-rate2">
1556         <description>Amount of tokens to add each <optionref ref="global-interval2">interval2</optionref> when advancing idle time</description>
1557       </scalar>
1558       <scalar id="global-interval2" name="interval2">
1559         <description>The interval between refills of the bucket when advancing idle time</description>
1560       </scalar>
1561       <boolean id="global-idle-time" name="idle-time">
1562         <description>When this file exists, advancing idle time is activated</description>
1563       </boolean>
1564       <collection name="cpu-id" type="symbolic">
1565         <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>
1566         <scalar name="tokens">
1567           <description>The initial amount of tokens to put in the bucket</description>
1568         </scalar>
1569         <scalar name="tokens-min">
1570           <description>The minimum amount of tokens required to unhold the context</description>
1571         </scalar>
1572         <scalar name="tokens-max">
1573           <description>The bucket's size</description>
1574         </scalar>
1575         <scalar name="fill-rate">
1576           <description>Amount of tokens to add each <optionref ref="local-interval">interval</optionref></description>
1577         </scalar>
1578         <scalar id="local-interval" name="interval">
1579           <description>The interval between refills of the bucket</description>
1580         </scalar>
1581         <scalar name="priority-bias">
1582           <description>Bias added to priorities calculated within the guest (result is clamped to -20/+19)</description>
1583         </scalar>
1584         <scalar name="fill-rate2">
1585           <description>Amount of tokens to add each <optionref ref="local-interval2">interval2</optionref> when advancing idle time</description>
1586         </scalar>
1587         <scalar id="local-interval2" name="interval2">
1588           <description>The interval between refills of the bucket when advancing idle time</description>
1589         </scalar>
1590         <boolean name="idle-time">
1591           <description>When this file exists, advancing idle time is activated</description>
1592         </boolean>
1593         <scalar id="cpu-id" name="cpu-id">
1594           <description>The CPU to apply these settings to</description>
1595         </scalar>
1596         <scalar name="bucket-id">
1597           <description>The bucket to apply these settings to</description>
1598         </scalar>
1599       </collection>
1600     </collection>
1601
1602     <collection name="spaces" since="0.30.215">
1603       <boolean name="pid">
1604         <description>Enables pid virtualization for this guest</description>
1605       </boolean>
1606       <boolean name="net">
1607         <description>Enable network virtualization for this guest</description>
1608       </boolean>
1609       <scalar name="mask">
1610         <description>Contains a mask of spaces to clone/enter</description>
1611       </scalar>
1612     </collection>
1613
1614     <collection name="ionice" since="0.30.216">
1615       <scalar name="class">
1616         <description>The IO scheduling class to use for this guest (see ionice(1)).</description>
1617       </scalar>
1618       <scalar name="priority">
1619         <description>The IO scheduling priority to use for this guest (see ionice(1)).</description>
1620       </scalar>
1621     </collection>
1622   </collection>
1623   </database>