added explicit cleanup trap
[util-vserver.git] / util-vserver / doc / configuration.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE cfgdirdoc SYSTEM "configuration.dtd" [
3 <!ENTITY init-scriptlet-params
4           "<params>
5             <param id='vserver-dir'>
6               <description>The configuration directory of the current vserver</description>
7             </param>
8             <param id='vserver-name'>
9               <description>The name of the current vserver</description>
10             </param>
11             <param id='action'>
12               <description>The fixed value of the current action (e.g. 'prepre-start', 'post-stop', ...).</description>
13             </param>
14           </params>">
15 <!ENTITY init-script-text     "The scriptlet">
16 <!ENTITY init-dir-text        "A directory with scriptlets">
17 <!ENTITY init-dir-script-text "A scriptlet">
18
19 <!ENTITY init-prepre-start "which will be executed before the network-interfaces are enabled
20                             and the directories are mounted.">
21 <!ENTITY init-pre-start  "which will be executed after network-interfaces were enabled and
22                           the directories mounted, but before the vserver itself has been
23                           started.">
24 <!ENTITY init-post-start "which will be executed after the vserver has been started.">
25 <!ENTITY init-pre-stop   "which will be executed before the vserver will be stopped.">
26 <!ENTITY init-post-stop  "which will be executed after the vserver has been stopped, but
27                           before the directories will be umounted and the the interfaces
28                           disabled.">
29 <!ENTITY init-postpost-stop "which will be executed after the vserver has been stopped
30                              completely.">
31 ]>
32
33 <cfgdirdoc>
34   <topleveldir type="confdir">
35     <description>The base configuration directory.</description>
36
37     <dir name=".defaults" type="fixed" optional="yes">
38       <dir name="init" type="fixed">
39         <file name="mtab">
40           <description>Default mtab-file</description>
41         </file>
42       </dir>
43
44       <symlink name="vdirbase">
45         <description></description>
46         <default>/vservers</default>
47       </symlink>
48
49       <dir name="apps" type="fixed">
50         <dir name="pkgmgmt" type="fixed">
51           <symlink name="base">
52             <description></description>
53             <default>/vservers/.pkg</default>
54           </symlink>
55
56           <file name="apt.conf">
57             <description>The default apt.conf which is going to be used. It is overridden by
58             distribution specific configuration file.</description>
59           </file>
60         </dir>
61
62         <dir name="debootstrap" type="fixed">
63           <file name="mirror">
64             <description>The Debian mirror which is used for 'debootstrap'.</description>
65           </file>
66
67           <file name="uri">
68             <description>When the 'debootstrap' package is not installed; fetch it from this uri and
69             install it at a temporary place.</description>
70           </file>
71         </dir>
72
73         <dir name="vprocunhide" type="fixed">
74           <file name="files">
75             <description>A list of files which will be made visibly by vprocunhide. Wildcards are
76             allowed and anything ending in '/' will be processed recursively. When this file exists,
77             it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files.</description>
78           </file>
79         </dir>
80
81         <dir name="init" type="fixed">
82           <symlink name="tty">
83             <description>A symlink to the TTY device where input/output will be redirected from/to
84             at startup via initscript.</description>
85           </symlink>
86         </dir>
87       </dir>
88     </dir>
89
90     <dir name=".distributions" type="fixed" optional="yes">
91       <dir name="dist" type="symbolic">
92         <file name="dev">
93           <description></description>
94         </file>
95
96         <file name="apt.conf">
97           <description>The default apt.conf which is going to be used. It overrides the apt.conf
98           from CONFDIR/.defaults/apps/pkgmgmt.</description>
99         </file>
100
101         <script name="initpre">
102           <description>Script which will be executed before packages will be installed.</description>
103           <params>
104             <param id="confdir">
105               <description>The configuration directory of the vserver which is going to be set
106               up.</description>
107             </param>
108
109             <param id="vserver">
110               <description>The pathname of the vserver binary.</description>
111             </param>
112           </params>
113         </script>
114
115         <script name="initpost">
116           <description>Script which will be executed after packages are installed.</description>
117           <params>
118             <param id="confdir">
119               <description>The configuration directory of the vserver which is going to be set
120               up.</description>
121             </param>
122
123             <param id="vserver">
124               <description>The pathname of the vserver binary.</description>
125             </param>
126           </params>
127         </script>
128
129         <dir name="pkgs" type="fixed">
130           <description>Contains files with packages.</description>
131           <file name="list" type="symbolic">
132             <description>File which contains the name of packages. On top of file the special
133             keywords '--reinstall' and '--can-fail' are possible.</description>
134           </file>
135         </dir>
136
137         <dir name="pubkeys" type="fixed">
138           <description>Directory with GPG pubkeys which are used to sign the packages of this
139           distribution.</description>
140         </dir>
141
142         <dir name="apt" type="fixed">
143           <description>Default content of the /etc/apt/ directory.</description>
144         </dir>
145
146         <dir name="rpm" type="fixed">
147           <description>Default content of the /etc/rpm directory.</description>
148         </dir>
149
150         <symlink name="rpmlib">
151           <description>Directory which overrides /usr/lib/rpm.</description>
152         </symlink>
153         
154         <symlink name="execdir">
155           <description>Directory with all executables and libraries which are required for this
156           distribution.</description>
157         </symlink>
158       </dir>
159     </dir> <!-- .distributions -->
160
161     <dir name="vserver-name" type="symbolic">
162       <description>The configuration directory for the vserver vserver-name.</description>
163
164       <file name="hostname">
165         <description>Contains the hostname of the vserver.</description>
166       </file>
167
168       <file name="name">
169         <description>Contains the name of the vserver. When not given, the basename of the directory
170         will be assumed as this name.</description>
171       </file>
172
173       <file name="domainname">
174         <description>The domainname of the vserver.</description>
175       </file>
176
177       <file name="nice">
178         <description>The nice-level on which the vserver will be started.</description>
179       </file>
180
181       <file name="capabilities">
182         <description>Contains per line a capability.</description>
183       </file>
184
185       <file name="shell">
186         <description>Contains the pathname of the shell which will be used by the "vserver ... enter"
187         command.</description>
188       </file>
189
190       <file name="flags">
191         <description>Contains per line a flag.</description>
192       </file>
193
194       <file name="context">
195         <description>Contains the context which shall be used for the vserver.</description>
196       </file>
197
198       <file name="fstab">
199         <description>The fstab file for the vserver.</description>
200       </file>
201       
202       <dir name="apps" type="fixed">
203         <dir name="init" type="fixed">
204           <file name="mtab">
205             <description>The initial-mtab which will be used for the vserver.</description>
206           </file>
207
208           <file name="style">
209             <description>Contains the init-style; possible values are 'sysv', 'plain' and
210             'minit'.</description>
211           </file>
212
213           <file name="runlevel">
214             <description>The start runlevel.</description>
215           </file>
216
217           <file name="runlevel.start">
218             <description>The start runlevel.</description>
219           </file>
220
221           <file name="runlevel.stop">
222             <description>The stop runlevel.</description>
223           </file>
224
225           <file name="killseq">
226             <description>Contains the 'signal [wait signal]*' sequence which is used to stop the
227             vserver.</description>
228           </file>
229
230           <file name="cmd.start">
231             <description>The command which is used to start the vserver. Each option must be on a
232             separate line.</description>
233           </file>
234
235           <file name="cmd.start-sync">
236             <description>The command which is used to wait on the vserver after it has been
237             started. Each option must be on a separate line. This file will be ignored when the
238             'sync' does not exist and the '--sync' option was not used.</description>
239           </file>
240           
241           <file name="cmd.stop">
242             <description>The command which is used to stop the vserver. Each option must be on a
243             separate line.</description>
244           </file>
245
246           <file name="cmd.stop-sync">
247             <description>The command which is used to wait on the vserver after it has been
248             stopped. Each option must be on a separate line. This file will be ignored when the
249             'sync' does not exist and the '--sync' option was not used.</description>
250           </file>
251
252           <file name="cmd.prepare">
253             <description>The command which is used to setup the init-system (e.g. to set the runlevel
254             in the utmp-file). Each option must be on a separate line.</description>
255           </file>
256
257           <file name="sync">
258             <description>Without this file, the 'cmd.*-sync' files will be ignored.</description>
259           </file>
260
261           <symlink name="tty">
262             <description>A symlink to the TTY device where input/output will be redirected from/to
263             at startup via initscript.</description>
264           </symlink>
265         </dir>
266       </dir>
267
268       <dir name="scripts" type="fixed">
269         <script name="prepre-start">
270           <description>&init-script-text; &init-prepre-start;</description>
271           &init-scriptlet-params;
272         </script>
273         <dir name="prepre-start.d" type="fixed">
274           <description>&init-dir-text; &init-prepre-start;</description>
275
276           <script name="script">
277             <description>&init-dir-script-text; &init-prepre-start;</description>
278             &init-scriptlet-params;
279           </script>
280         </dir>
281
282         <script name="pre-start">
283           <description>&init-script-text; &init-pre-start;</description>
284           &init-scriptlet-params;
285         </script>
286
287         <dir name="pre-start.d">
288           <description>&init-dir-text; &init-pre-start;</description>
289           
290           <script name="script">
291             <description>&init-dir-script-text; &init-pre-start;</description>
292             &init-scriptlet-params;
293           </script>
294         </dir>
295
296         <script name="post-start">
297           <description>&init-script-text; &init-post-start;</description>
298           &init-scriptlet-params;
299         </script>
300
301         <dir name="post-start.d">
302           <description>&init-dir-text; &init-post-start;</description>
303           
304           <script name="script">
305             <description>&init-dir-script-text; &init-post-start;</description>
306             &init-scriptlet-params;
307           </script>
308         </dir>
309
310         <script name="pre-stop">
311           <description>&init-script-text; &init-pre-stop;</description>
312           &init-scriptlet-params;
313         </script>
314
315         <dir name="pre-stop.d" type="fixed">
316           <description>&init-dir-text; &init-pre-stop;</description>
317           <script name="script">
318             <description>&init-dir-script-text; &init-pre-stop;</description>
319             &init-scriptlet-params;
320           </script>
321         </dir>
322
323         <script name="post-stop">
324           <description>&init-script-text; &init-post-stop;</description>
325           &init-scriptlet-params;
326         </script>
327
328         <dir name="post-stop.d" type="fixed">
329           <description>&init-dir-text; &init-post-stop;</description>
330           <script name="script">
331             <description>&init-dir-script-text; &init-post-stop;</description>
332             &init-scriptlet-params;
333           </script>
334         </dir>
335
336         <script name="postpost-stop">
337           <description>&init-script-text; &init-postpost-stop;</description>
338           &init-scriptlet-params;
339         </script>
340
341         <dir name="postpost-stop.d" type="fixed">
342           <description>&init-dir-text; &init-postpost-stop;</description>
343           <script name="script">
344             <description>&init-dir-script-text; &init-postpost-stop;</description>
345             &init-scriptlet-params;
346           </script>
347         </dir>
348       </dir>
349
350
351       
352       <dir name="interfaces" type="fixed">
353         <file name="bcast">
354           <description>The deafult broadcast address.</description>
355         </file>
356         <file name="dev">
357           <description>The default network-device.</description>
358         </file>
359         <file name="prefix">
360           <description>The default network-prefix.</description>
361         </file>
362         <file name="mask">
363           <description>The default network-mask.</description>
364         </file>
365         <file name="scope">
366           <description>The default scope of the network interfaces.</description>
367         </file>
368
369         <dir name="iface" type="symbolic">
370           <file name="disabled">
371             <description>When this file exists, this interface will be ignored.</description>
372           </file>
373           
374           <file name="ip">
375             <description>The ip which will be assigned to this interface.</description>
376           </file>
377           <file name="bcast">
378             <description>The broadcast address.</description>
379           </file>
380           <file name="dev">
381             <description>The network-device.</description>
382           </file>
383           <file name="prefix">
384             <description>The network-prefix.</description>
385           </file>
386           <file name="mask">
387             <description>The network-mask.</description>
388           </file>
389           <file name="scope">
390             <description>The scope of the network interfaces.</description>
391           </file>
392           <file name="name">
393             <description>When this file exists, the interface will be named with the text in this file.</description>
394           </file>
395           <file name="nodev">
396             <description>When this file exists, the interface will be assumed to exist already. A
397             former name for this flag was 'only_ip' which is deprecated now.</description>
398           </file>
399         </dir>
400       </dir>
401
402       <dir name="ulimits" type="fixed">
403         <description>A directory with ulimits. Possible resources are cpu, data, fsize, locks,
404         memlock, nofile, nproc, rss and/or stack.</description>
405
406         <file name="resource" type="symbolic">
407           <description>A file which contains the hard- and soft-limit of the given resource in the
408           first line. The special keyword 'inf' is recognized.</description>
409         </file>
410
411         <file name="resource.hard" type="symbolic">
412           <description>A file which contains the hard- of the given resource in the first line. The
413           special keyword 'inf' is recognized.</description>
414         </file>
415
416         <file name="resource.soft" type="symbolic">
417           <description>A file which contains the soft- of the given resource in the first line. The
418           special keyword 'inf' is recognized.</description>
419         </file>
420       </dir>
421
422       <dir name="rlimits" type="fixed">
423         <description>see ulimits</description>
424       </dir>
425
426       <dir name="uts" type="fixed">
427         <file name="context">
428           <description>The context-name of the vserver</description>
429         </file>
430         <file name="sysname">
431           <description>The sysname of the vserver</description>
432         </file>
433         <file name="nodename">
434           <description>The node-/hostname of the vserver</description>
435         </file>
436         <file name="release">
437           <description>The OS-release of the vserver</description>
438         </file>
439         <file name="version">
440           <description>The OS-version of the vserver</description>
441         </file>
442         <file name="machine">
443           <description>The machine-type of the vserver</description>
444         </file>
445         <file name="domainname">
446           <description>The NIS domainname of the vserver</description>
447         </file>
448       </dir>
449     </dir>
450   </topleveldir>
451 </cfgdirdoc>
452
453
454 <!--
455 !! Local Variables:
456 !! fill-column: 100
457 !! End:
458 -->