1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- <!DOCTYPE database SYSTEM "configuration.dtd" []> -->
5 <database xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xsi:noNamespaceSchemaLocation="file:configuration.xsd">
8 <!-- Global configuration -->
9 <collection name=".defaults" use="optional">
10 <collection name="init" type="fixed">
12 <description>Default mtab file</description>
16 <link name="vdirbase">
17 <default>/vservers</default>
18 <description>A link to the default vserver rootdirectory.</description>
23 Path of the vserver run reverse directory. This directory contains
24 symlinks named with XID numbers which point back to the configuration
25 directory of vservers. Under kernel 2.4 this is required for the XID
26 to VSERVER mapping; Under kernel 2.6 it is unused.
28 NOTE: this link exists in 0.30.202+ only; in previous versions it was
29 a vserver specific setting.
33 <collection name="apps">
34 <collection name="pkgmgmt">
36 <default>/vservers/.pkg</default>
38 <data name="apt.conf">
39 <description>The default apt.conf which is going to be used. It is overridden by
40 distribution specific configuration file.
45 <collection name="debootstrap">
46 <scalar name="mirror">
48 The Debian mirror to use with the 'debootstrap' program
53 When the 'debootstrap' package is not installed; fetch it from this
54 uri and install it at a temporary place.
59 <collection name="vshelper">
62 The file where output will be logged to when 'vshelper' is invoked
63 from the kernel. This should point somewhere e.g. into /var/log.
67 <collection name="vshelper-methods">
68 <program name="handler" type="symbolic">
75 <boolean name="disabled">
77 When existing, the vshelper functionality will be disabled for all
82 <boolean name="warning-disabled">
84 When existing, sanity checks for the vshelper functionality will be
91 <collection name="vprocunhide">
94 A list of files which will be made visibly by vprocunhide. Wildcards are
95 allowed and anything ending in '/' will be processed recursively. When this file exists,
96 it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files. The entries there must be
97 absolute filenames inclusive the leading '/proc'.
102 <collection name="init">
105 A symlink to the TTY device where input/output will be redirected from/to
106 at startup via initscript.
111 <collection name="vunify">
112 <list name="exclude">
113 <description>Static list of excluded files.</description>
119 <collection name=".distributions" use="optional">
120 <collection name="dist" type="symbolic">
122 <description></description>
124 <collection name="yum">
126 The default, yum-related content of the /etc directory.
128 <scalar name="yum.conf">
130 The master yum configuration file. It supports the @YUMETCDIR@,
131 @YUMCACHEDIR@ and @YUMLOGDIR@ placeholder which will be replaced at
132 'vserver ... build' time.
136 <collection name="yum.repos.d">
137 <description>A directory with yum repositories.</description>
139 <data name="apt.conf">
141 The default apt.conf which is going to be used. It overrides the
142 apt.conf from CONFDIR/.defaults/apps/pkgmgmt.
145 <program name="initpre">
147 Script which will be executed before packages will be installed.
150 <parameter name="confdir">
152 The configuration directory of the vserver which is going to be set up.
155 <parameter name="vserver">
157 The pathname of the vserver binary.
162 <program name="initpost">
164 Script which will be executed after packages are installed.
167 <parameter name="confdir">
169 The configuration directory of the vserver which is going to be set up.
172 <parameter name="vserver">
174 The pathname of the vserver binary.
180 <collection name="pkgs">
182 Contains files with packages.
186 File which contains the name of packages. On top of file the special
187 keywords '--reinstall' and '--can-fail' are possible.
192 <collection name="pubkeys">
194 Directory with GPG pubkeys which are used to sign the packages of this
199 <collection name="apt">
201 Default content of the /etc/apt/ directory.
205 <collection name="rpm">
207 Default content of the /etc/rpm directory.
213 Directory which overrides /usr/lib/rpm.
216 <link name="execdir">
218 Directory with all executables and libraries which are required for
225 <!-- Vserver configuration -->
226 <collection name="vserver-name" type="symbolic">
228 The configuration directory for the vserver vserver-name.
233 Path of the vserver root directory
239 Points to a file which will contain the XID of the running vserver. When
240 the vserver is stopped, this can be a dangling symlink.
244 <list name="bcapabilities">
246 [experimental; name is subject of possible change] Contains the system capabilities. See
247 <ulink url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/bcaps-v13.c?rev=HEAD">lib/bcaps-v13.c</ulink>
251 <list name="ccapabilities">
253 [experimental; name is subject of possible change] Contains the
254 context capabilities. See <ulink
255 url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/ccaps-v13.c?rev=HEAD">lib/ccaps-v13.c</ulink>
259 <hash name="schedule">
261 [experimental; name is subject of possible change] Contains the
262 scheduler parameters, one per line.
264 The Hard CPU limit uses a mechanism called a Token Bucket. the
265 concept is simple: you have a bucket of a certain size which is
266 filled with a specified amount R of tokens each interval T until the
267 maximum is reached (excess tokens are spilled). At each timer tick,
268 a running process consumes one token from the bucket, unless the
269 bucket is empty. If the bucket is empty the process is put in the
270 hold queue. When the bucket has been refilled to at least M tokens,
271 all on hold processes are rescheduled.
274 <key name="fill-rate">
276 Amount of tokens append to the bucket each interval.
279 <key name="interval">
281 The intervall between refills of amount 'fill_rate'. This value is
287 Initial bucket contents.
290 <key name="tokens-min">
292 The minimum amount of tokens required to unhold processes
295 <key name="tokens-max">
300 <key name="priority-bias">
309 Contains the name of the vserver. When not given, the basename of the directory
310 will be assumed as this name.
315 The nice-level on which the vserver will be started.
318 <list name="capabilities">
320 Contains per line a capability. This file is used for the 2.4 kernel
321 only; for 2.6 use 'bcapabilities'.
324 <scalar name="shell">
326 Contains the pathname of the shell which will be used by the "vserver
332 Contains per line a flag. See <ulink
333 url="http://savannah.nongnu.org/cgi-bin/viewcvs/util-vserver/util-vserver/lib/cflags-v13.c?rev=HEAD">lib/cflags-v13.c</ulink>
337 <element name="fakeinit">
339 The new process will believe it is process number 1. Useful to run a
340 real /sbin/init in a vserver. Warning: this flag should not be used
341 unless you know what you are doing. Often, it is better to use the
345 <element name="lock">
347 The new process is trapped and can't use chcontext anymore.
350 <element name="sched">
352 The new process and its children will share a common
355 <element name="nproc">
357 Limit the number of process in the vserver according to
358 ulimit setting. Normally, ulimit is a per user thing.
359 With this flag, it becomes a per vserver thing.
362 <element name="private">
364 No one can join this security context once created.
367 <element name="ulimit">
369 Apply the current ulimit to the whole context
374 <scalar name="context">
376 Contains the context which shall be used for the vserver.
381 The fstab file for the vserver. Entries in this file will be mounted
382 within the network context of the vserver; this means that mount will
383 be called as 'chbind <options> mount ...'. Use the 'fstab.local'
384 file when you do not want this behavior, but in most cases the 'fstab'
388 <data name="fstab.local">
390 The fstab file for the vserver. In opposite to the normal 'fstab'
391 file, the mounting happens in the local network context. Currently
392 there is no way to mix entries of both files; 'fstab' will be always
393 processed before 'fstab.local'.
397 <collection name="apps">
398 <collection name="init">
401 The initial-mtab which will be used for the vserver.
405 <scalar name="style">
407 Contains the init-style.
410 <enumeration value="sysv"/>
411 <enumeration value="plain"/>
412 <enumeration value="minit"/>
413 <enumeration value="gento"/>
417 <scalar name="runlevel">
418 <description>The start runlevel.</description>
421 <scalar name="runlevel.start">
422 <description>The start runlevel.</description>
425 <scalar name="runlevel.stop">
426 <description>The stop runlevel.</description>
429 <scalar name="killseq">
431 Contains the 'signal [wait signal]*' sequence which is used to stop
436 <list name="cmd.start">
438 The command which is used to start the vserver. Each option must be on
443 <list name="cmd.start-sync">
445 The command which is used to wait on the vserver after it has been
446 started. Each option must be on a separate line. This file will be
447 ignored when the 'sync' does not exist and the '--sync' option was not
452 <list name="cmd.stop">
454 The command which is used to stop the vserver. Each option must be on
459 <list name="cmd.stop-sync">
461 The command which is used to wait on the vserver after it has been
462 stopped. Each option must be on a separate line. This file will be
463 ignored when the 'sync' does not exist and the '--sync' option was not
468 <list name="cmd.prepare">
470 The command which is used to setup the init-system (e.g. to set the
471 runlevel in the utmp-file). Each option must be on a separate line.
475 <boolean name="sync">
477 If this file is not present, all 'cmd.*-sync files will be ignored.
483 A symlink to the TTY device where input/output will be redirected
484 from/to at startup via initscript.
490 This file is used to mark group of vservers which shall be started/stopped
491 together by the initscript. Content is a simple string like 'default'.
495 <list name="depends">
497 This file is used to configure vservers which must be running before
498 the current vserver can be started. At shutdown, the current vserver
499 will be stopped before its dependencies. Content of this file are
500 vserver ids (one name per line).
505 <collection name="vshelper">
506 <scalar name="sync-timeout">
508 The timeout in seconds which is used when synchronising vserver
509 startup/shutdown with the vshelper. When no set, 30 seconds will be
512 <default>30</default>
515 <scalar name="action">
517 The action which is going to be executed when a vshelper event occurs. The
518 default value is 'restart', but there can be defined own methods by placing
519 scripts into the 'vshelper-methods' directories. These scripts are fed with
520 the same arguments as the 'vshelper' script.
522 <default>restart</default>
525 <program name="event" type="symbolic">
527 When existing. these scripts will be executed *instead* of the default
528 handler defined in 'action'. Their name must match the event which
529 caused the execution of 'vshelper'; e.g. 'restart' or 'poweroff'. See
530 the vs_reboot() function in the kernel for more details.
533 <parameter name="xid">
535 The xid of the context calling the vshelper
538 <parameter name="event">
546 <boolean name="disabled">
548 When existing, the vshelper functionality will be disabled for this
553 <boolean name="warning-disabled">
555 When existing, sanity checks for the vshelper functionality will be
562 <collection name="vshelper-methods">
563 <program name="handler" type="symbolic">
570 <collection name="vunify">
572 This directory contains configuration data required for vserver
576 <list name="exclude">
578 Static list of excluded files. This list supports an rsync syntax:
579 when a file is prefixed by '+', it is a candidate for unification;
580 when there is no prefix or a '-' it will be excluded. Shell-wildcards
581 are allowed for the filenames.
585 <link name="refserver.X" type="symbolic">
587 These are symlinks to the configuration directory
588 (e.g. CONFDIR/vservers/<id>) of a refserver. There may be
589 multiple such symlinks but they must be prefixed by 'refserver.' and
590 will be processed in alphanumerical order.
596 <collection name="scripts">
598 A directory for scripts. By default, when one of these scripts will be
599 executed, the execution of defaultscripts (within .../.defaults/scripts)
600 will be skipped. To execute them nevertheless, the $DONT_SKIP_DEFAULTS
601 environment variable must be set by one of the in-shellcontext scripts
602 (the non-executable ones).
605 <program name="prepre-start">
607 The scriptlet which will be executed before the network-interfaces are
608 enabled and the directories are mounted."
611 <parameter name="vserver-dir">
613 The configuration directory of the current vserver.
616 <parameter name="vserver-name">
618 The name of the current vserver.
621 <parameter name="action">
623 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
628 <collection name="prepre-start.d">
630 Repository of prepre-start like scripts
632 <program name="script" type="symbolic">
633 <description>See prepre-start.</description>
635 <parameter name="vserver-dir">
637 The configuration directory of the current vserver.
640 <parameter name="vserver-name">
642 The name of the current vserver.
645 <parameter name="action">
647 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
654 <program name="pre-start">
656 The scriptlet which will be executed after network-interfaces were
657 enabled and the directories mounted, but before the vserver itself has
661 <parameter name="vserver-dir">
663 The configuration directory of the current vserver.
666 <parameter name="vserver-name">
668 The name of the current vserver.
671 <parameter name="action">
673 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
678 <collection name="pre-start.d">
680 Repository of pre-start like scripts
682 <program name="script" type="symbolic">
683 <description>See pre-start.</description>
685 <parameter name="vserver-dir">
687 The configuration directory of the current vserver.
690 <parameter name="vserver-name">
691 <description>The name of the current vserver.</description>
693 <parameter name="action">
695 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
703 <program name="post-start">
705 The scriptlet which will be executed after the vserver has been started.
708 <parameter name="vserver-dir">
709 <description>The configuration directory of the current vserver.</description>
711 <parameter name="vserver-name">
712 <description>The name of the current vserver.</description>
714 <parameter name="action">
716 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
721 <collection name="post-start.d">
722 <description>Repository of post-start like scripts</description>
723 <program name="script" type="symbolic">
724 <description>See post-start.</description>
726 <parameter name="vserver-dir">
727 <description>The configuration directory of the current vserver.</description>
729 <parameter name="vserver-name">
730 <description>The name of the current vserver.</description>
732 <parameter name="action">
734 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
742 <program name="pre-stop">
744 The scriptlet which will be executed before the vserver will be stopped.
747 <parameter name="vserver-dir">
748 <description>The configuration directory of the current vserver.</description>
750 <parameter name="vserver-name">
751 <description>The name of the current vserver.</description>
753 <parameter name="action">
755 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
760 <collection name="pre-stop.d">
762 Repository of pre-stop like scripts
764 <program name="script" type="symbolic">
765 <description>See pre-stop.</description>
767 <parameter name="vserver-dir">
768 <description>The configuration directory of the current vserver.</description>
770 <parameter name="vserver-name">
771 <description>The name of the current vserver.</description>
773 <parameter name="action">
775 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
782 <program name="post-stop">
784 The scriptlet which will be executed after the vserver has been
785 stopped, but before the directories will be umounted and the the
789 <parameter name="vserver-dir">
790 <description>The configuration directory of the current vserver.</description>
792 <parameter name="vserver-name">
793 <description>The name of the current vserver.</description>
795 <parameter name="action">
797 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
802 <collection name="post-stop.d">
803 <description>Repository of post-stop like scripts</description>
804 <program name="script" type="symbolic">
805 <description>See post-stop.</description>
807 <parameter name="vserver-dir">
808 <description>The configuration directory of the current vserver.</description>
810 <parameter name="vserver-name">
811 <description>The name of the current vserver.</description>
813 <parameter name="action">
815 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
822 <program name="postpost-stop">
824 The scriptlet which will be executed after the vserver has been stopped
828 <parameter name="vserver-dir">
829 <description>The configuration directory of the current vserver.</description>
831 <parameter name="vserver-name">
832 <description>The name of the current vserver.</description>
834 <parameter name="action">
836 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
841 <collection name="postpost-stop.d">
842 <description>Repository of postpost-stop like scripts</description>
843 <program name="script" type="symbolic">
844 <description>See postpost-stop.</description>
846 <parameter name="vserver-dir">
847 <description>The configuration directory of the current vserver.</description>
849 <parameter name="vserver-name">
850 <description>The name of the current vserver.</description>
852 <parameter name="action">
854 The fixed value of the current action (e.g. 'prepre-start', 'post-stop'...).
862 <collection name="interfaces">
863 <scalar name="bcast">
864 <description>The default broadcast address.</description>
867 <description>The default network device.</description>
869 <scalar name="prefix">
870 <description>The default network prefix-length.</description>
873 <description>The default network mask.</description>
875 <scalar name="scope">
876 <description>The default scope of the network interfaces.</description>
879 <collection name="iface" type="symbolic">
881 'iface' is an arbitrary name for the interface; the value itself is
882 not important but may be interesting regarding interface-creation and
883 usage with 'chbind'. Both happens in alphabetical order and numbers
884 like '00' are good names for these directories.
887 <boolean name="disabled">
888 <description>When this file exists, this interface will be ignored.</description>
892 <description>The ip which will be assigned to this interface.</description>
894 <scalar name="bcast">
895 <description>The broadcast address.</description>
898 <description>The network device.</description>
900 <scalar name="prefix">
901 <description>The network prefix-length.</description>
904 <description>The network mask.</description>
906 <scalar name="scope">
907 <description>The scope of the network interface.</description>
911 When this file exists, the interface will be named with the text in this
912 file. Without such an entry, the IP will not be shown by 'ifconfig' but
913 by 'ip addr ls' only. Such a labeled interface is known as an "alias"
914 also (e.g. 'eth0:foo').
917 <boolean name="nodev">
919 When this file exists, the interface will be assumed to exist
920 already. This can be used to assign primary interfaces which are
921 created by the host or another vserver.
927 <collection name="ulimits">
929 A directory with ulimits. Possible resources are cpu, data, fsize,
930 locks, memlock, nofile, nproc, rss and/or stack. This configuration
931 will be honored for kernel 2.4 only.
933 <scalar name="resource" type="symbolic">
935 A file which contains the hard- and soft-limit of the given resource
936 in the first line. The special keyword 'inf' is recognized.
939 <scalar name="resource.hard" type="symbolic">
941 A file which contains the hard- of the given resource in the first
942 line. The special keyword 'inf' is recognized.
945 <scalar name="resource.soft" type="symbolic">
947 A file which contains the soft- of the given resource in the first
948 line. The special keyword 'inf' is recognized.
953 <collection name="rlimits">
955 A directory with resource limits. Possible resources are cpu, fsize,
956 data, stack, core, rss, nproc, nofile, memlock, as and locks. This
957 configuration will be honored for kernel 2.6 only.
959 <scalar name="resource" type="symbolic">
961 A file which contains the hard- and soft-limit of the given resource
962 in the first line. The special keyword 'inf' is recognized.
965 <scalar name="resource.hard" type="symbolic">
967 A file which contains the hard- of the given resource in the first
968 line. The special keyword 'inf' is recognized.
971 <scalar name="resource.soft" type="symbolic">
973 A file which contains the soft- of the given resource in the first
974 line. The special keyword 'inf' is recognized.
977 <scalar name="resource.min" type="symbolic">
979 A file which contains the guaranted minimum of the given resource in
980 the first line. The special keyword 'inf' is recognized.
985 <collection name="uts">
986 <scalar name="context">
988 The context-name of the vserver. This file is listed for completeness
989 only; the 'context' name is used and set internally by the util-vserver
990 tools and can *not* be modified.
993 <scalar name="sysname">
994 <description>The sysname of the vserver</description>
996 <scalar name="nodename">
997 <description>The node-/hostname of the vserver</description>
999 <scalar name="release">
1000 <description>The OS-release of the vserver</description>
1002 <scalar name="version">
1003 <description>The OS-version of the vserver</description>
1005 <scalar name="machine">
1006 <description>The machine-type of the vserver</description>
1008 <scalar name="domainname">
1009 <description>The NIS domainname of the vserver</description>