f0563ba1f8a5637769dee3af94dd4c9699014a6c
[util-vserver.git] / util-vserver / 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
22     <boolean id="global-nonamespace" name="nonamespace">
23       <description>
24 Disable namespace usage globally. It can be overridden for a single vserver
25 by setting the <optionref ref="global-namespace">namespace</optionref> flag
26 there.
27
28 In this mode the <directory>/vservers</directory> directory must have
29 the 'barrier' attribute. Else, common chroot(2) exploits are possible.
30       </description>
31     </boolean>
32
33     <link name="run.rev">
34       <description>
35 Path of the vserver run reverse directory. This directory contains
36 symlinks named with XID numbers which point back to the configuration
37 directory of vservers. Under kernel 2.4 this is required for the XID
38 to VSERVER mapping; Under kernel 2.6 it is unused.
39
40 NOTE: this link exists in 0.30.202+ only; in previous versions it was
41 a vserver specific setting.
42       </description>
43     </link>
44     
45     <collection name="apps">
46       <collection name="pkgmgmt">
47         <link name="base">
48           <default>/vservers/.pkg</default>
49         </link> 
50         <data name="apt.conf">
51           <description>The default apt.conf which is going to be used. It is overridden by
52 distribution specific configuration file.
53           </description>
54         </data>
55       </collection>
56       
57       <collection name="debootstrap">
58         <scalar name="mirror">
59           <description>
60 The Debian mirror to use with the <tool>debootstrap</tool> program
61           </description>
62         </scalar>
63         <scalar name="uri">
64           <description>
65 When the <tool>debootstrap</tool> package is not installed; fetch it
66 from this uri and install it at a temporary place.
67           </description>
68         </scalar>
69       </collection>
70
71       <collection name="vshelper">
72         <link name="logfile">
73           <description>
74 The file where output will be logged to when <tool>vshelper</tool>
75 is invoked from the kernel. This should point somewhere e.g. into
76 <directory>/var/log</directory>.
77           </description>
78         </link>
79
80         <collection name="vshelper-methods">
81           <program name="handler" type="symbolic">
82             <description>
83 See vshelper/action.
84             </description>
85           </program>
86         </collection>
87
88         <boolean name="disabled">
89           <description>
90 When existing, the vshelper functionality will be disabled for all
91 vservers.
92           </description>
93         </boolean>
94
95         <boolean name="debug">
96           <description>
97 When existing, the vshelper execution will be traced.
98           </description>
99         </boolean>
100         
101         <boolean name="warning-disabled">
102           <description>
103 When existing, sanity checks for the vshelper functionality will be
104 skipped.
105           </description>
106         </boolean>
107
108       </collection>
109       
110       <collection name="vprocunhide">
111         <list name="files">
112           <description>
113 A list of files which will be made visibly by vprocunhide. Wildcards are
114 allowed and anything ending in '/' will be processed recursively. When this file exists,
115 it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files. The entries there must be
116 absolute filenames inclusive the leading '/proc'.
117           </description>
118         </list>
119       </collection>
120       
121       <collection name="init">
122         <link name="tty">
123           <description>
124 A symlink to the TTY device where input/output will be redirected from/to
125 at startup via initscript.
126           </description>
127         </link>
128       </collection>
129       
130       <collection name="vunify">
131         <list name="exclude">
132           <description>Static list of excluded files.</description>
133         </list>
134
135         <collection name="hash" since="0.30.205">
136           <description>
137 A directory which will be used as the storage place for the
138 <tool>vhashify</tool> command.
139           </description>
140           <link name="id" type="symbolic">
141             <description>
142 Points to a directory within the filesystems which are used for the
143 vservers. There must be not more than one of such a directory per
144 filesystem.
145             </description>
146           </link>
147
148           <scalar name="method" since="0.30.299">
149             <default>SHA1</default>
150             <description>The used hash method.</description>
151           </scalar>
152         </collection>
153
154         <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
155           <description>
156 When existing, information from packagemanagement will not be used to
157 create dynamic exclude-lists.
158           </description>
159         </boolean>
160
161         <boolean name="pgkmgmt-force" default="off" since="0.30.205">
162           <description>
163 When existing, information from packagemanagement will be used to
164 create dynamic exclude-lists. This option requires that (a known)
165 packagemanagement is configured for the vserver; else the requested
166 operation will fail. Most tools assume 'on' as the default value.
167           </description>
168         </boolean>
169
170       </collection>
171     </collection>
172   </collection>
173     
174   <collection name=".distributions" use="optional">
175     <collection name="dist" type="symbolic">
176       <scalar name="dev">
177         <description></description>
178       </scalar>
179       <collection name="yum">
180         <description>
181 The default, yum-related content of the <directory>/etc</directory>
182 directory.
183         </description>
184         <scalar name="yum.conf">
185           <description>
186 The master yum configuration file. It supports the @YUMETCDIR@,
187 @YUMCACHEDIR@ and @YUMLOGDIR@ placeholder which will be replaced at
188 <command>vserver ... build</command> time.
189           </description>
190         </scalar>
191       </collection>
192       <collection name="yum.repos.d">
193         <description>A directory with yum repositories.</description>
194       </collection>
195       <data name="apt.conf">
196         <description>
197 The default apt.conf which is going to be used. It overrides the
198 apt.conf from CONFDIR/.defaults/apps/pkgmgmt.
199         </description>
200       </data>
201       <program name="initpre">
202         <description>
203 Script which will be executed before packages will be installed.
204           </description>
205         <parameterList>
206           <parameter name="confdir">
207             <description>
208 The configuration directory of the vserver which is going to be set up.
209             </description>
210           </parameter>
211           <parameter name="vserver">
212             <description>
213 The pathname of the vserver binary.
214             </description>
215           </parameter>
216         </parameterList>
217       </program>
218       <program name="initpost">
219         <description>
220 Script which will be executed after packages are installed.
221           </description>
222         <parameterList>
223           <parameter name="confdir">
224             <description>
225 The configuration directory of the vserver which is going to be set up.
226             </description>
227           </parameter>
228           <parameter name="vserver">
229             <description>
230 The pathname of the vserver binary.
231             </description>
232           </parameter>
233         </parameterList>
234       </program>
235       
236       <collection name="pkgs">
237         <description>
238 Contains files with packagenames.
239         </description>
240         <list name="list">
241           <description>
242 File which contains the name of packages. On top of file the special
243 keywords '--reinstall' and '--can-fail' are possible.
244           </description>
245         </list>
246       </collection>
247       
248       <collection name="pubkeys">
249         <description>
250 Directory with GPG pubkeys which are used to sign the packages of this
251 distribution.
252         </description>
253       </collection>
254       
255       <collection name="apt">
256         <description>
257 Default content of the <directory>/etc/apt/</directory> directory.
258         </description>
259       </collection>
260       
261       <collection name="rpm">
262         <description>
263 Default content of the <directory>/etc/rpm</directory> directory.
264         </description>
265       </collection>
266       
267       <link name="rpmlib">
268         <description>
269 Directory which overrides <directory>/usr/lib/rpm</directory>.
270         </description>
271       </link>
272       <link name="execdir">
273         <description>
274 Directory with all executables and libraries which are required for
275 this distribution.
276         </description>
277       </link>
278     </collection>
279   </collection>
280   
281   <!-- Vserver configuration -->
282   <collection name="vserver-name" type="symbolic">
283     <description>
284 The configuration directory for the vserver vserver-name.
285     </description>
286     
287     <link name="vdir">
288       <description>
289 Path of the vserver root directory
290       </description>
291     </link>
292
293     <link name="run">
294       <description>
295 Points to a file which will contain the XID of the running vserver. When
296 the vserver is stopped, this can be a dangling symlink.
297       </description>
298     </link>
299
300     <list id="bcapabilities" name="bcapabilities">
301       <description>
302 [experimental; name is subject of possible change] Contains the system capabilities. See
303 <ulink url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/bcaps-v13.c?rev=HEAD">lib/bcaps-v13.c</ulink>
304 for possible values.
305       </description>
306     </list>
307     <list name="ccapabilities">
308       <description>
309 [experimental; name is subject of possible change] Contains the
310 context capabilities. See <ulink
311 url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/ccaps-v13.c?rev=HEAD">lib/ccaps-v13.c</ulink>
312 for possible values.
313       </description>
314     </list>
315
316     <boolean id="global-namespace" name="namespace">
317       <description>
318 Overrides the global <optionref ref="global-nonamespace">nonamespace</optionref> flag and enables
319 namespace usage for the current vserver.
320       </description>
321     </boolean>
322
323     <boolean name="nonamespace">
324       <description>
325 Disables namespace usage for the current vserver.
326
327 In this mode the <directory>/vservers</directory> directory must have
328 the 'barrier' attribute. Else, common chroot(2) exploits are possible.
329       </description>
330     </boolean>
331
332     <hash name="schedule">
333       <description>
334 [experimental; name is subject of possible change] Contains the
335 scheduler parameters, one per line.
336
337 The Hard CPU limit uses a mechanism called a Token Bucket.  the
338 concept is simple: you have a bucket of a certain size which is
339 filled with a specified amount R of tokens each interval T until the
340 maximum is reached (excess tokens are spilled). At each timer tick,
341 a running process consumes one token from the bucket, unless the
342 bucket is empty. If the bucket is empty the process is put in the
343 hold queue. When the bucket has been refilled to at least M tokens,
344 all on hold processes are rescheduled.
345
346 See the <ulink url="http://linux-vserver.org/Scheduler+Parameters">Linux
347 VServer Wiki</ulink> for more information about this file.
348       </description>
349       <keys>
350         <key id="fill_rate" name="fill-rate">
351           <description>
352 Amount of tokens append to the bucket each interval.
353             </description>
354         </key>
355         <key name="interval">
356           <description>
357 The intervall between refills of amount <optionref>fill_rate</optionref>. This
358 value is express in ticks.
359           </description>
360         </key>
361         <key name="tokens">
362           <description>
363 Initial bucket contents.
364           </description>
365         </key>
366         <key name="tokens-min">
367           <description>
368 The minimum amount of tokens required to unhold processes
369           </description>
370         </key>
371         <key name="tokens-max">
372           <description>
373 The bucket size.
374           </description>
375         </key>
376         <key name="priority-bias">
377           <description>
378 ???
379           </description>
380         </key>
381       </keys>
382     </hash>
383     <scalar name="name">
384       <description>
385 Contains the name of the vserver. When not given, the basename of the directory
386 will be assumed as this name.
387       </description>
388     </scalar>
389     <scalar name="nice">
390       <description>
391 The nice-level on which the vserver will be started.
392       </description>
393     </scalar>
394     <list name="capabilities">
395       <description>
396 Contains per line a capability. This file is used for the 2.4 kernel
397 only; for 2.6 use <optionref>bcapabilities</optionref>.
398       </description>
399     </list>
400     <scalar name="shell">
401       <description>
402 Contains the pathname of the shell which will be used by the "vserver
403 ... enter" command.
404       </description>
405     </scalar>
406     <list name="personality">
407       <description>
408 Used to set the personality of the vserver. First line in the file
409 is the personality-type followed by flags (one item per line). See
410 <filename>/usr/include/linux/personality.h</filename> for possible
411 values.
412       </description>
413     </list>
414     <list name="flags">
415       <description>
416 Contains per line a flag. See <ulink
417 url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/cflags-v13.c?rev=HEAD">lib/cflags-v13.c</ulink>
418 for possible values.
419       </description>
420       <!--
421       <elements>
422         <element name="fakeinit">
423           <description>
424 The new process will believe it is process number 1. Useful to run a
425 real /sbin/init in a vserver. Warning: this flag should not be used
426 unless you know what you are doing. Often, it is better to use the
427 'plain' initstyle.
428           </description>
429         </element>
430         <element name="lock">
431           <description>
432 The new process is trapped and can't use chcontext anymore.
433           </description>
434         </element>
435         <element name="sched">
436           <description>
437 The new process and its children will share a common
438           </description>
439         </element>
440         <element name="nproc">
441           <description>
442 Limit the number of process in the vserver according to
443 ulimit setting. Normally, ulimit is a per user thing.
444 With this flag, it becomes a per vserver thing.  
445           </description>
446         </element>
447         <element name="private">
448           <description>
449 No one can join this security context once created.
450           </description>
451         </element>
452         <element name="ulimit">
453           <description>
454 Apply the current ulimit to the whole context
455           </description>
456         </element>
457       </elements>
458       -->
459     </list>
460     <scalar name="context">
461       <description>
462 Contains the context which shall be used for the vserver.
463         </description>
464     </scalar>
465     <data id="fstab" name="fstab">
466       <description>
467 The fstab file for the vserver. Entries in this file will be mounted
468 within the network context of the host. Use the
469 <optionref>fstab.remote</optionref> file when you want that the
470 mounting happens in the network context of the vserver. In most cases
471 the 'fstab' file should be used.
472       </description>
473     </data>
474     <data id="fstab.remote" name="fstab.remote">
475       <description>
476 The fstab file for the vserver. Entries in this file will be mounted
477 within the network context of the host; this means that mount will be
478 called as <command>chbind &lt;options&gt; mount ...</command>. See
479 <optionref>fstab</optionref> also.
480       </description>
481     </data>
482     
483     <collection name="apps">
484       <collection name="init">
485         <data name="mtab">
486           <description>
487 The initial-mtab which will be used for the vserver.
488           </description>
489         </data>
490         
491         <scalar name="style">
492           <description>
493 Contains the init-style.
494           </description>
495           <restriction>
496             <enumeration value="sysv"/>
497             <enumeration value="plain"/>
498             <enumeration value="minit"/>
499             <enumeration value="gento"/>
500           </restriction>
501         </scalar>
502         
503         <scalar name="runlevel">
504           <description>The start runlevel.</description>
505         </scalar>
506         
507         <scalar name="runlevel.start">
508           <description>The start runlevel.</description>
509         </scalar>
510         
511         <scalar name="runlevel.stop">
512           <description>The stop runlevel.</description>
513         </scalar>
514         
515         <scalar name="killseq">
516           <description>
517 Contains the 'signal [wait signal]*' sequence which is used to stop
518 the vserver.
519           </description>
520         </scalar>
521         
522         <list name="cmd.start">
523           <description>
524 The command which is used to start the vserver. Each option must be on
525 a separate line.
526           </description>
527         </list>
528         
529         <list name="cmd.start-sync">
530           <description>
531 The command which is used to wait on the vserver after it has been
532 started. Each option must be on a separate line. This file will be
533 ignored when the <optionref>sync</optionref> flag does not exist and the
534 '--sync' option was not used.
535           </description>
536         </list>
537         
538         <list name="cmd.stop">
539           <description>
540 The command which is used to stop the vserver. Each option must be on
541 a separate line.
542           </description>
543         </list>
544         
545         <list name="cmd.stop-sync">
546           <description>
547 The command which is used to wait on the vserver after it has been
548 stopped. Each option must be on a separate line. This file will be
549 ignored when the <optionref>sync</optionref> flag does not exist and the
550 '--sync' option was not used.
551           </description>
552         </list>
553         
554         <list name="cmd.prepare">
555           <description>
556 The command which is used to setup the init-system (e.g. to set the
557 runlevel in the utmp-file). Each option must be on a separate line.
558           </description>
559         </list>
560         
561         <boolean id="sync" name="sync">
562           <description>
563 If this file is not present, all 'cmd.*-sync files will be ignored.
564             </description>
565         </boolean>
566         
567         <link name="tty">
568           <description>
569 A symlink to the TTY device where input/output will be redirected
570 from/to at startup via initscript.
571           </description>
572         </link>
573         
574         <scalar name="mark">
575           <description>
576 This file is used to mark group of vservers which shall be started/stopped
577 together by the initscript. Content is a simple string like 'default'.
578           </description>
579         </scalar>
580         
581         <list name="depends">
582           <description>
583 This file is used to configure vservers which must be running before
584 the current vserver can be started. At shutdown, the current vserver
585 will be stopped before its dependencies. Content of this file are
586 vserver ids (one name per line).
587           </description>
588         </list>
589       </collection>
590       
591       <collection name="vshelper">
592         <scalar name="sync-timeout">
593           <default>30</default>
594           <description>
595 The timeout in seconds which is used when synchronising vserver
596 startup/shutdown with the vshelper. When no set, 30 seconds will be
597 assumed.
598           </description>
599         </scalar>
600         
601         <scalar name="action">
602           <default>restart</default>
603           <description>
604 The action which is going to be executed when a vshelper event
605 occurs. The default value is 'restart', but there can be defined own
606 methods by placing scripts into the
607 <optionref>vshelper-methods</optionref> directories. These scripts are
608 fed with the same arguments as the <tool>vshelper</tool> script.
609           </description>
610         </scalar>
611         
612         <program name="event" type="symbolic">
613           <description>
614 When existing, these scripts will be executed *instead* of the default
615 handler defined in 'action'. Their name must match the event which caused
616 the execution of <tool>vshelper</tool>; e.g. 'restart' or 'poweroff'. See
617 the vs_reboot() function in the kernel for more details.
618           </description>
619           <parameterList>
620             <parameter name="xid">
621               <description>
622 The xid of the context calling the vshelper
623               </description>
624             </parameter>
625             <parameter name="event">
626               <description>
627 The reboot-event.
628               </description>
629             </parameter>
630           </parameterList>
631         </program>
632         
633         <boolean name="disabled">
634           <description>
635 When existing, the vshelper functionality will be disabled for this
636 vserver.
637           </description>
638         </boolean>
639
640         <boolean name="debug">
641           <description>
642 When existing, the vshelper execution will be traced for this vserver.
643           </description>
644         </boolean>
645         
646         <boolean name="warning-disabled">
647           <description>
648 When existing, sanity checks for the vshelper functionality will be
649 skipped.
650           </description>
651         </boolean>
652         
653       </collection>
654       
655       <collection id="vshelper-methods" name="vshelper-methods">
656         <program name="handler" type="symbolic">
657           <description>
658 See vshelper/action.
659           </description>
660         </program>
661       </collection>
662       
663       <collection name="vunify">
664         <description>
665 This directory contains configuration data required for vserver
666 unification.
667         </description>
668         
669         <list name="exclude">
670           <description>
671 <p>Static list of files which are excluded for unification. This list
672 supports an rsync-like syntax: when a file is prefixed by '+', it is a
673 candidate for unification; when there is no prefix or a '-' or a '~' it
674 will be excluded. Shell-wildcards are allowed for the filenames.</p>
675 <p>When used with <tool>vcopy</tool>, the '~' prefix prevents copying
676 of the file entirely (e.g. for keyfiles). With this tool, the file will
677 be copied instead of hardlinked when the '-' prefix is used.</p>
678           </description>
679         </list>
680         
681         <link name="refserver.X" type="symbolic">
682           <description>
683 These are symlinks to the configuration directory
684 (e.g. CONFDIR/vservers/&lt;id&gt;) of a refserver. There may be
685 multiple such symlinks but they must be prefixed by 'refserver.' and
686 will be processed in alphanumerical order.
687           </description>
688         </link>
689
690         <collection name="hash" since="0.30.205">
691           <description>
692 A directory which will be used as the storage place for the
693 <tool>vhashify</tool> command.
694           </description>
695           <link name="id" type="symbolic">
696             <description>
697 Points to a directory within the filesystems which are used for the
698 vservers. There must be not more than one of such a directory per
699 filesystem.
700             </description>
701           </link>
702
703           <scalar name="method"  since="0.30.299">
704             <default>SHA1</default>
705             <description>The used hash method.</description>
706           </scalar>
707         </collection>
708
709         <boolean name="pkgmgmt-ignore" default="off" since="0.30.205">
710           <description>
711 When existing, information from packagemanagement will not be used to
712 create dynamic exclude-lists.
713           </description>
714         </boolean>
715
716         <boolean name="pgkmgmt-force" default="off" since="0.30.205">
717           <description>
718 When existing, information from packagemanagement will be used to
719 create dynamic exclude-lists. This option requires that (a known)
720 packagemanagement is configured for the vserver; else the requested
721 operation will fail. Most tools assume 'on' as the default value.
722           </description>
723         </boolean>
724         
725       </collection>
726     </collection>
727     
728     <collection name="scripts">
729       <description>
730 A directory for scripts. By default, when one of these scripts will be
731 executed, the execution of defaultscripts (within .../.defaults/scripts)
732 will be skipped. To execute them nevertheless, the $DONT_SKIP_DEFAULTS
733 environment variable must be set by one of the in-shellcontext scripts
734 (the non-executable ones).
735       </description>
736       
737       <program name="prepre-start">
738         <description>
739 The scriptlet which will be executed before the network-interfaces are
740 enabled and the directories are mounted. Before executing the script,
741 the configuration directory will be made the working directory.
742         </description>
743         <parameterList>
744           <parameter name="vserver-dir">
745             <description>
746 The configuration directory of the current vserver.
747             </description>
748           </parameter>
749           <parameter name="vserver-name">
750             <description>
751 The name of the current vserver.
752             </description>
753           </parameter>
754           <parameter name="action">
755             <description>
756 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
757             </description>
758           </parameter>
759         </parameterList>
760       </program>
761       <collection name="prepre-start.d">
762         <description>
763 Repository of prepre-start like scripts.  Before executing the script,
764 the configuration directory will be made the working directory.
765         </description>                                                                                                                 
766         <program name="script" type="symbolic">
767           <description>See prepre-start.</description>
768           <parameterList>
769             <parameter name="vserver-dir">
770               <description>
771 The configuration directory of the current vserver.
772               </description>
773             </parameter>
774             <parameter name="vserver-name">
775               <description>
776 The name of the current vserver.
777               </description>
778             </parameter>
779             <parameter name="action">
780               <description>
781 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
782               </description>
783             </parameter>
784           </parameterList>
785         </program>
786       </collection>
787       
788       <program name="pre-start">
789         <description>
790 The scriptlet which will be executed after network-interfaces were
791 enabled and the directories mounted, but before the vserver itself has
792 been started.  Before executing the script, the vserver root directory
793 will be made the working directory.
794         </description>
795         <parameterList>
796           <parameter name="vserver-dir">
797             <description>
798 The configuration directory of the current vserver.
799             </description>
800           </parameter>
801           <parameter name="vserver-name">
802             <description>
803 The name of the current vserver.
804             </description>
805           </parameter>
806           <parameter name="action">
807             <description>
808 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
809             </description>
810           </parameter>
811         </parameterList>
812       </program>
813       <collection name="pre-start.d">
814         <description>
815 Repository of pre-start like scripts. Before executing these scripts,
816 the vserver root directory will be made the working directory.
817         </description>                                                                                                                 
818         <program name="script" type="symbolic">
819           <description>See pre-start.</description>
820           <parameterList>
821             <parameter name="vserver-dir">
822               <description>
823 The configuration directory of the current vserver.
824               </description>
825             </parameter>
826             <parameter name="vserver-name">
827               <description>The name of the current vserver.</description>
828             </parameter>
829             <parameter name="action">
830               <description>
831 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
832               </description>
833             </parameter>
834           </parameterList>
835         </program>
836       </collection>
837       
838
839       <program name="post-start">
840         <description>
841 The scriptlet which will be executed after the vserver has been
842 started. Before executing the script, the vserver root directory
843 will be made the working directory.
844         </description>
845         <parameterList>
846           <parameter name="vserver-dir">
847             <description>The configuration directory of the current vserver.</description>
848           </parameter>
849           <parameter name="vserver-name">
850             <description>The name of the current vserver.</description>
851           </parameter>
852           <parameter name="action">
853             <description>
854 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
855             </description>
856           </parameter>
857         </parameterList>
858       </program>
859       <collection name="post-start.d">
860         <description>
861 Repository of post-start like scripts. Before executing these scripts,
862 the vserver root directory will be made the working directory.
863         </description>
864         <program name="script" type="symbolic">
865           <description>See post-start.</description>
866           <parameterList>
867             <parameter name="vserver-dir">
868               <description>The configuration directory of the current vserver.</description>
869             </parameter>
870             <parameter name="vserver-name">
871               <description>The name of the current vserver.</description>
872             </parameter>
873             <parameter name="action">
874               <description>
875 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
876               </description>
877             </parameter>
878           </parameterList>
879         </program>
880       </collection>
881
882
883       <program name="pre-stop">
884         <description>
885 The scriptlet which will be executed before the vserver will be
886 stopped. Before executing the script, the vserver root directory
887 will be made the working directory.
888         </description>
889         <parameterList>
890           <parameter name="vserver-dir">
891             <description>The configuration directory of the current vserver.</description>
892           </parameter>
893           <parameter name="vserver-name">
894             <description>The name of the current vserver.</description>
895           </parameter>
896           <parameter name="action">
897             <description>
898 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
899             </description>
900           </parameter>
901         </parameterList>
902       </program>
903       <collection name="pre-stop.d">
904         <description>
905 Repository of pre-stop like scripts. Before executing the script, the
906 vserver root directory will be made the working directory.
907         </description>                                                                                                                 
908         <program name="script" type="symbolic">
909           <description>See pre-stop.</description>
910           <parameterList>
911             <parameter name="vserver-dir">
912               <description>The configuration directory of the current vserver.</description>
913             </parameter>
914             <parameter name="vserver-name">
915               <description>The name of the current vserver.</description>
916             </parameter>
917             <parameter name="action">
918               <description>
919 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
920               </description>
921             </parameter>
922           </parameterList>
923         </program>
924       </collection>
925
926       <program name="post-stop">
927         <description>
928 The scriptlet which will be executed after the vserver has been
929 stopped, but before the directories will be umounted and the the
930 interfaces disabled. Before executing the script, the vserver root
931 directory will be made the working directory.
932         </description>
933         <parameterList>
934           <parameter name="vserver-dir">
935             <description>The configuration directory of the current vserver.</description>
936           </parameter>
937           <parameter name="vserver-name">
938             <description>The name of the current vserver.</description>
939           </parameter>
940           <parameter name="action">
941             <description>
942 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
943             </description>
944           </parameter>
945         </parameterList>
946       </program>
947       <collection name="post-stop.d">
948         <description>
949 Repository of post-stop like scripts. Before executing the script, the
950 vserver root directory will be made the working directory.
951         </description>
952         <program name="script" type="symbolic">
953           <description>See post-stop.</description>
954           <parameterList>
955             <parameter name="vserver-dir">
956               <description>The configuration directory of the current vserver.</description>
957             </parameter>
958             <parameter name="vserver-name">
959               <description>The name of the current vserver.</description>
960             </parameter>
961             <parameter name="action">
962               <description>
963 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
964               </description>
965             </parameter>
966           </parameterList>
967         </program>
968       </collection>
969       
970       <program name="postpost-stop">
971         <description>
972 The scriptlet which will be executed after the vserver has been stopped
973 completely. Before executing the script, the vserver root directory
974 will be made the working directory.
975         </description>
976         <parameterList>
977           <parameter name="vserver-dir">
978             <description>The configuration directory of the current vserver.</description>
979           </parameter>
980           <parameter name="vserver-name">
981             <description>The name of the current vserver.</description>
982           </parameter>
983           <parameter name="action">
984             <description>
985 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
986             </description>
987           </parameter>
988         </parameterList>
989       </program>
990       <collection name="postpost-stop.d">
991         <description>
992 Repository of postpost-stop like scripts. Before executing the script,
993 the vserver root directory will be made the working directory.
994         </description>
995         <program name="script" type="symbolic">
996           <description>See postpost-stop.</description>
997           <parameterList>
998             <parameter name="vserver-dir">
999               <description>The configuration directory of the current vserver.</description>
1000             </parameter>
1001             <parameter name="vserver-name">
1002               <description>The name of the current vserver.</description>
1003             </parameter>
1004             <parameter name="action">
1005               <description>
1006 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
1007               </description>
1008             </parameter>
1009           </parameterList>
1010         </program>
1011       </collection>
1012     </collection>
1013     
1014     <collection name="interfaces">
1015       <scalar name="bcast">
1016         <description>The default broadcast address.</description>
1017       </scalar>
1018       <scalar name="dev">
1019         <description>The default network device.</description>
1020       </scalar>
1021       <scalar name="prefix">
1022         <description>The default network prefix-length.</description>
1023       </scalar>
1024       <scalar name="mask">
1025         <description>The default network mask.</description>
1026       </scalar>
1027       <scalar name="scope">
1028         <description>The default scope of the network interfaces.</description>
1029       </scalar>
1030       
1031       <collection name="iface" type="symbolic">
1032         <description>
1033 'iface' is an arbitrary name for the interface; the value itself is
1034 not important but may be interesting regarding interface-creation and
1035 usage with <tool>chbind</tool>. Both happens in alphabetical order and
1036 numbers like '00' are good names for these directories.
1037         </description>
1038         
1039         <boolean name="disabled">
1040           <description>When this file exists, this interface will be ignored.</description>
1041         </boolean>
1042         
1043         <scalar name="ip">
1044           <description>The ip which will be assigned to this interface.</description>
1045         </scalar>
1046         <scalar name="bcast">
1047           <description>The broadcast address.</description>
1048         </scalar>
1049         <scalar name="dev">
1050           <description>The network device.</description>
1051         </scalar>
1052         <scalar name="prefix">
1053           <description>The network prefix-length.</description>
1054         </scalar>
1055         <scalar name="mask">
1056           <description>The network mask.</description>
1057         </scalar>
1058         <scalar name="scope">
1059           <description>The scope of the network interface.</description>
1060         </scalar>
1061         <scalar name="name">
1062           <description>
1063 When this file exists, the interface will be named with the text in
1064 this file. Without such an entry, the IP will not be shown by
1065 <tool>ifconfig</tool> but by <command>ip addr ls</command> only.  Such
1066 a labeled interface is known as an "alias" also (e.g. 'eth0:foo').
1067           </description>
1068         </scalar>
1069         <boolean name="nodev">
1070           <description>
1071 When this file exists, the interface will be assumed to exist
1072 already. This can be used to assign primary interfaces which are
1073 created by the host or another vserver.
1074           </description>
1075         </boolean>
1076       </collection>
1077     </collection>
1078     
1079     <collection name="ulimits">
1080       <description>
1081 A directory with ulimits. Possible resources are cpu, data, fsize,
1082 locks, memlock, nofile, nproc, rss and/or stack. This configuration
1083 will be honored for kernel 2.4 only.
1084       </description>                                                                                                                 
1085       <scalar name="resource" type="symbolic">
1086         <description>
1087 A file which contains the hard- and soft-limit of the given resource
1088 in the first line. The special keyword 'inf' is recognized.
1089         </description>
1090       </scalar>                                                                            
1091       <scalar name="resource.hard" type="symbolic">
1092         <description>
1093 A file which contains the hard- of the given resource in the first
1094 line. The special keyword 'inf' is recognized.
1095         </description>
1096       </scalar>                                                                                             
1097       <scalar name="resource.soft" type="symbolic">
1098         <description>
1099 A file which contains the soft- of the given resource in the first
1100 line. The special keyword 'inf' is recognized.
1101         </description>
1102       </scalar>
1103     </collection>
1104     
1105     <collection name="rlimits">
1106       <description>
1107 A directory with resource limits. Possible resources are cpu, fsize,
1108 data, stack, core, rss, nproc, nofile, memlock, as and locks. This
1109 configuration will be honored for kernel 2.6 only.
1110       </description>                                                                                                                 
1111       <scalar name="resource" type="symbolic">
1112         <description>
1113 A file which contains the hard- and soft-limit of the given resource
1114 in the first line. The special keyword 'inf' is recognized.
1115         </description>
1116       </scalar>                                                                            
1117       <scalar name="resource.hard" type="symbolic">
1118         <description>
1119 A file which contains the hard- of the given resource in the first
1120 line. The special keyword 'inf' is recognized.
1121         </description>
1122       </scalar>                                                                                             
1123       <scalar name="resource.soft" type="symbolic">
1124         <description>
1125 A file which contains the soft- of the given resource in the first
1126 line. The special keyword 'inf' is recognized.
1127         </description>
1128       </scalar>
1129       <scalar name="resource.min" type="symbolic">
1130         <description>
1131 A file which contains the guaranted minimum of the given resource in
1132 the first line. The special keyword 'inf' is recognized.
1133         </description>
1134       </scalar>
1135     </collection>
1136     
1137     <collection name="uts">
1138       <scalar name="context">
1139         <description>
1140 The context-name of the vserver. This file is listed for completeness
1141 only; the 'context' name is used and set internally by the util-vserver
1142 tools and can *not* be modified.
1143         </description>
1144       </scalar>
1145       <scalar name="sysname">
1146         <description>The sysname of the vserver</description>
1147       </scalar>
1148       <scalar name="nodename">
1149         <description>The node-/hostname of the vserver</description>
1150       </scalar>
1151       <scalar name="release">
1152         <description>The OS-release of the vserver</description>
1153       </scalar>
1154       <scalar name="version">
1155         <description>The OS-version of the vserver</description>
1156       </scalar>
1157       <scalar name="machine">
1158         <description>The machine-type of the vserver</description>
1159       </scalar>
1160       <scalar name="domainname">
1161         <description>The NIS domainname of the vserver</description>
1162       </scalar>
1163     </collection>
1164   </collection>
1165   </database>