<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://linux-vserver.at/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://linux-vserver.at/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adrien</id>
		<title>Linux-VServer - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://linux-vserver.at/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adrien"/>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Special:Contributions/Adrien"/>
		<updated>2026-04-09T15:55:48Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.2</generator>

	<entry>
		<id>http://linux-vserver.at/Downloads</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Downloads"/>
				<updated>2007-10-07T15:35:17Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Kernel Patches */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{NeedCompletion}}&lt;br /&gt;
&lt;br /&gt;
== Kernel Patches ==&lt;br /&gt;
&lt;br /&gt;
The Linux- VServer project maintains several branches of the kernel patch. Since version 1.00 the versioning is similar to the kernel versioning scheme. Even numbered releases (a.X.z with even X) are stable, reasonably well tested and expected not to change feature-wise. Odd numbered (a.Y.z with odd Y) releases are development releases. The last digit/number (z) is a subversion identifier. Experimental versions and Release Candidates might add a fourth identifier to that scheme.&lt;br /&gt;
&lt;br /&gt;
Basically the stable and development releases should be similar in functionality, but the development releases will include features and enhancements not present in the stable branch. Once those features mature (and get well tested), they will be incorporated by the stable branch.&lt;br /&gt;
&lt;br /&gt;
For example the first stable release (1.00) uses two systemcalls as the previous releases did. However, the vserver system calls have been changed in the first development release (1.1.0). Linus assigned the vserver project a single system call, so a [[System Call Switch]] has been implemented. Running a development release usually requires using recent (latest) tools from the util-vserver development branch.&lt;br /&gt;
&lt;br /&gt;
1.X.z and 1.Y.z releases are for the 2.4 kernels, while 1.9.x (obsoleted by now) and 2.X.y releases are for the 2.6 series.&lt;br /&gt;
&lt;br /&gt;
{{CurrentPatchTableMatrix}}&lt;br /&gt;
&lt;br /&gt;
All (previous) downloads are available in the [[Archives]]. Also take a look at the [[ChangeLogs]].&lt;br /&gt;
&lt;br /&gt;
For an overview of available Features in each version take a look at [[Feature Matrix]]&lt;br /&gt;
&lt;br /&gt;
 Precompiled kernel packages are available for [http://packages.debian.org/search?keywords=linux+image+vserver+&amp;amp;searchon=names&amp;amp;suite=all&amp;amp;section=all  debian]&lt;br /&gt;
&lt;br /&gt;
== Userspace Utilities ==&lt;br /&gt;
&lt;br /&gt;
In order to administrate your virtual private servers you need a set of userspace utilities. The following gives an overview of possible choices. For detailed instructions visit the respective project pages.&lt;br /&gt;
&lt;br /&gt;
=== util-vserver ===&lt;br /&gt;
&lt;br /&gt;
Created by Enrico Scholz util-vserver is the current &amp;quot;official&amp;quot; userspace implementation. Many distributions have added binary packages for util-vserver to their repositories.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of util-vserver is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.214.tar.bz2 0.30.214]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [https://savannah.nongnu.org/projects/util-vserver/ util-vserver project homepage]&lt;br /&gt;
&lt;br /&gt;
=== VServer Control Daemon ===&lt;br /&gt;
&lt;br /&gt;
Being still in development the VServer Control Daemon is another approach for virtual private server management. The concept is based on a client/server architecture using XMLRPC. Currently there are no releases, i.e. source code has to be obtained from SVN.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the VServer Control Daemon is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://svn.linux-vserver.org/svn/vcd SVN trunk]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://dev.croup.de/proj/vserver-utils/browser/trunk/doc/vcd.spec?format=raw VCD specification]&lt;br /&gt;
&lt;br /&gt;
=== Testme.sh script ===&lt;br /&gt;
&lt;br /&gt;
Useful for debugging linux-vserver problems.&lt;br /&gt;
&lt;br /&gt;
* [http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh testme.sh]&lt;br /&gt;
&lt;br /&gt;
=== Ancient vserver tools ===&lt;br /&gt;
&lt;br /&gt;
Although not used much anymore the old tools by Jacques Gelinas are said to still work on current kernels.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the vserver tools is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [ftp://ftp.solucorp.qc.ca/pub/vserver/vserver-0.40.src.tar.gz 0.40]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://www.solucorp.qc.ca/miscprj/s_context.hc vserver tools project homepage]&lt;br /&gt;
&lt;br /&gt;
== Guest images ==&lt;br /&gt;
&lt;br /&gt;
Below is a list of third-party archives for VPS images&lt;br /&gt;
&lt;br /&gt;
* http://mirrors.sandino.net/vserver/images/&lt;br /&gt;
* http://debian.marlow.dk/vserver/guest/&lt;br /&gt;
* http://lylix.net/vps+templates/func,select/id,1/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/x86/vserver/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/amd64/vserver/&lt;br /&gt;
&lt;br /&gt;
== Chroot repositories ==&lt;br /&gt;
&lt;br /&gt;
A collection of chroot trees suitable to bootstrap a vserver or to use with chroot&lt;br /&gt;
&lt;br /&gt;
* http://packaging-farm.dachary.org/packaging-farm/ and rsync://packaging-farm.dachary.org/packaging-farm/&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Downloads</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Downloads"/>
				<updated>2007-10-07T15:35:04Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Kernel Patches */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{NeedCompletion}}&lt;br /&gt;
&lt;br /&gt;
== Kernel Patches ==&lt;br /&gt;
&lt;br /&gt;
The Linux- VServer project maintains several branches of the kernel patch. Since version 1.00 the versioning is similar to the kernel versioning scheme. Even numbered releases (a.X.z with even X) are stable, reasonably well tested and expected not to change feature-wise. Odd numbered (a.Y.z with odd Y) releases are development releases. The last digit/number (z) is a subversion identifier. Experimental versions and Release Candidates might add a fourth identifier to that scheme.&lt;br /&gt;
&lt;br /&gt;
Basically the stable and development releases should be similar in functionality, but the development releases will include features and enhancements not present in the stable branch. Once those features mature (and get well tested), they will be incorporated by the stable branch.&lt;br /&gt;
&lt;br /&gt;
For example the first stable release (1.00) uses two systemcalls as the previous releases did. However, the vserver system calls have been changed in the first development release (1.1.0). Linus assigned the vserver project a single system call, so a [[System Call Switch]] has been implemented. Running a development release usually requires using recent (latest) tools from the util-vserver development branch.&lt;br /&gt;
&lt;br /&gt;
1.X.z and 1.Y.z releases are for the 2.4 kernels, while 1.9.x (obsoleted by now) and 2.X.y releases are for the 2.6 series.&lt;br /&gt;
&lt;br /&gt;
{{CurrentPatchTableMatrix}}&lt;br /&gt;
&lt;br /&gt;
All (previous) downloads are available in the [[Archives]]. Also take a look at the [[ChangeLogs]].&lt;br /&gt;
&lt;br /&gt;
For an overview of available Features in each version take a look at [[Feature Matrix]]&lt;br /&gt;
&lt;br /&gt;
 Precompiled kernel packages are available for [http://packages.debian.org/search?keywords=linux+image+vserver+&amp;amp;searchon=names&amp;amp;suite=all&amp;amp;section=all  debian ]&lt;br /&gt;
&lt;br /&gt;
== Userspace Utilities ==&lt;br /&gt;
&lt;br /&gt;
In order to administrate your virtual private servers you need a set of userspace utilities. The following gives an overview of possible choices. For detailed instructions visit the respective project pages.&lt;br /&gt;
&lt;br /&gt;
=== util-vserver ===&lt;br /&gt;
&lt;br /&gt;
Created by Enrico Scholz util-vserver is the current &amp;quot;official&amp;quot; userspace implementation. Many distributions have added binary packages for util-vserver to their repositories.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of util-vserver is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.214.tar.bz2 0.30.214]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [https://savannah.nongnu.org/projects/util-vserver/ util-vserver project homepage]&lt;br /&gt;
&lt;br /&gt;
=== VServer Control Daemon ===&lt;br /&gt;
&lt;br /&gt;
Being still in development the VServer Control Daemon is another approach for virtual private server management. The concept is based on a client/server architecture using XMLRPC. Currently there are no releases, i.e. source code has to be obtained from SVN.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the VServer Control Daemon is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://svn.linux-vserver.org/svn/vcd SVN trunk]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://dev.croup.de/proj/vserver-utils/browser/trunk/doc/vcd.spec?format=raw VCD specification]&lt;br /&gt;
&lt;br /&gt;
=== Testme.sh script ===&lt;br /&gt;
&lt;br /&gt;
Useful for debugging linux-vserver problems.&lt;br /&gt;
&lt;br /&gt;
* [http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh testme.sh]&lt;br /&gt;
&lt;br /&gt;
=== Ancient vserver tools ===&lt;br /&gt;
&lt;br /&gt;
Although not used much anymore the old tools by Jacques Gelinas are said to still work on current kernels.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the vserver tools is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [ftp://ftp.solucorp.qc.ca/pub/vserver/vserver-0.40.src.tar.gz 0.40]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://www.solucorp.qc.ca/miscprj/s_context.hc vserver tools project homepage]&lt;br /&gt;
&lt;br /&gt;
== Guest images ==&lt;br /&gt;
&lt;br /&gt;
Below is a list of third-party archives for VPS images&lt;br /&gt;
&lt;br /&gt;
* http://mirrors.sandino.net/vserver/images/&lt;br /&gt;
* http://debian.marlow.dk/vserver/guest/&lt;br /&gt;
* http://lylix.net/vps+templates/func,select/id,1/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/x86/vserver/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/amd64/vserver/&lt;br /&gt;
&lt;br /&gt;
== Chroot repositories ==&lt;br /&gt;
&lt;br /&gt;
A collection of chroot trees suitable to bootstrap a vserver or to use with chroot&lt;br /&gt;
&lt;br /&gt;
* http://packaging-farm.dachary.org/packaging-farm/ and rsync://packaging-farm.dachary.org/packaging-farm/&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Downloads</id>
		<title>Downloads</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Downloads"/>
				<updated>2007-10-07T15:33:58Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Kernel Patches */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{NeedCompletion}}&lt;br /&gt;
&lt;br /&gt;
== Kernel Patches ==&lt;br /&gt;
&lt;br /&gt;
The Linux- VServer project maintains several branches of the kernel patch. Since version 1.00 the versioning is similar to the kernel versioning scheme. Even numbered releases (a.X.z with even X) are stable, reasonably well tested and expected not to change feature-wise. Odd numbered (a.Y.z with odd Y) releases are development releases. The last digit/number (z) is a subversion identifier. Experimental versions and Release Candidates might add a fourth identifier to that scheme.&lt;br /&gt;
&lt;br /&gt;
Basically the stable and development releases should be similar in functionality, but the development releases will include features and enhancements not present in the stable branch. Once those features mature (and get well tested), they will be incorporated by the stable branch.&lt;br /&gt;
&lt;br /&gt;
For example the first stable release (1.00) uses two systemcalls as the previous releases did. However, the vserver system calls have been changed in the first development release (1.1.0). Linus assigned the vserver project a single system call, so a [[System Call Switch]] has been implemented. Running a development release usually requires using recent (latest) tools from the util-vserver development branch.&lt;br /&gt;
&lt;br /&gt;
1.X.z and 1.Y.z releases are for the 2.4 kernels, while 1.9.x (obsoleted by now) and 2.X.y releases are for the 2.6 series.&lt;br /&gt;
&lt;br /&gt;
{{CurrentPatchTableMatrix}}&lt;br /&gt;
&lt;br /&gt;
All (previous) downloads are available in the [[Archives]]. Also take a look at the [[ChangeLogs]].&lt;br /&gt;
&lt;br /&gt;
For an overview of available Features in each version take a look at [[Feature Matrix]]&lt;br /&gt;
&lt;br /&gt;
 -&amp;gt;Precompiled debian kernel packages [http://packages.debian.org/search?keywords=linux+image+vserver+&amp;amp;searchon=names&amp;amp;suite=all&amp;amp;section=all are available ]&lt;br /&gt;
&lt;br /&gt;
== Userspace Utilities ==&lt;br /&gt;
&lt;br /&gt;
In order to administrate your virtual private servers you need a set of userspace utilities. The following gives an overview of possible choices. For detailed instructions visit the respective project pages.&lt;br /&gt;
&lt;br /&gt;
=== util-vserver ===&lt;br /&gt;
&lt;br /&gt;
Created by Enrico Scholz util-vserver is the current &amp;quot;official&amp;quot; userspace implementation. Many distributions have added binary packages for util-vserver to their repositories.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of util-vserver is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.214.tar.bz2 0.30.214]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [https://savannah.nongnu.org/projects/util-vserver/ util-vserver project homepage]&lt;br /&gt;
&lt;br /&gt;
=== VServer Control Daemon ===&lt;br /&gt;
&lt;br /&gt;
Being still in development the VServer Control Daemon is another approach for virtual private server management. The concept is based on a client/server architecture using XMLRPC. Currently there are no releases, i.e. source code has to be obtained from SVN.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the VServer Control Daemon is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [http://svn.linux-vserver.org/svn/vcd SVN trunk]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://dev.croup.de/proj/vserver-utils/browser/trunk/doc/vcd.spec?format=raw VCD specification]&lt;br /&gt;
&lt;br /&gt;
=== Testme.sh script ===&lt;br /&gt;
&lt;br /&gt;
Useful for debugging linux-vserver problems.&lt;br /&gt;
&lt;br /&gt;
* [http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh testme.sh]&lt;br /&gt;
&lt;br /&gt;
=== Ancient vserver tools ===&lt;br /&gt;
&lt;br /&gt;
Although not used much anymore the old tools by Jacques Gelinas are said to still work on current kernels.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 60%;&amp;quot;&lt;br /&gt;
| The current version of the vserver tools is:&lt;br /&gt;
| style=&amp;quot;width: 20%;&amp;quot; | [ftp://ftp.solucorp.qc.ca/pub/vserver/vserver-0.40.src.tar.gz 0.40]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* [http://www.solucorp.qc.ca/miscprj/s_context.hc vserver tools project homepage]&lt;br /&gt;
&lt;br /&gt;
== Guest images ==&lt;br /&gt;
&lt;br /&gt;
Below is a list of third-party archives for VPS images&lt;br /&gt;
&lt;br /&gt;
* http://mirrors.sandino.net/vserver/images/&lt;br /&gt;
* http://debian.marlow.dk/vserver/guest/&lt;br /&gt;
* http://lylix.net/vps+templates/func,select/id,1/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/x86/vserver/&lt;br /&gt;
* http://distfiles.gentoo.org/experimental/amd64/vserver/&lt;br /&gt;
&lt;br /&gt;
== Chroot repositories ==&lt;br /&gt;
&lt;br /&gt;
A collection of chroot trees suitable to bootstrap a vserver or to use with chroot&lt;br /&gt;
&lt;br /&gt;
* http://packaging-farm.dachary.org/packaging-farm/ and rsync://packaging-farm.dachary.org/packaging-farm/&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/util-vserver:Documentation</id>
		<title>util-vserver:Documentation</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/util-vserver:Documentation"/>
				<updated>2006-11-30T16:44:03Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=The content of the /etc/vservers directory=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
==/etc/vservers/.defaults==&lt;br /&gt;
*cachebase&lt;br /&gt;
**A link to the directory which will hold cached information about vservers.&lt;br /&gt;
*namespace-cleanup&lt;br /&gt;
**Enable namespace cleanup globally. It can be overridden for a single vserver by setting the nonamespace-cleanup flag there.&lt;br /&gt;
*nonamespace&lt;br /&gt;
**Disable namespace usage globally. It can be overridden for a single vserver by setting the namespace flag there. In this mode the /vservers directory must have the 'barrier' attribute. Else, common chroot(2) exploits are possible.&lt;br /&gt;
*run.rev&lt;br /&gt;
**Path of the vserver run reverse directory. This directory contains symlinks named with XID numbers which point back to the configuration directory of vservers. Under kernel 2.4 this is required for the XID to VSERVER mapping; Under kernel 2.6 it is unused. NOTE: this link exists in 0.30.202* only; in previous versions it was a vserver specific setting.&lt;br /&gt;
*vdirbase&lt;br /&gt;
**A link to the default vserver rootdirectory.&lt;br /&gt;
==/etc/vservers/.defaults/apps==&lt;br /&gt;
===/etc/vservers/.defaults/apps/debootstrap===&lt;br /&gt;
*mirror&lt;br /&gt;
**            The Debian mirror to use with the debootstrap program&lt;br /&gt;
*uri&lt;br /&gt;
**            When the debootstrap package is not installed; fetch it from this uri and install it at a temporary place.&lt;br /&gt;
===/etc/vservers/.defaults/apps/init===&lt;br /&gt;
*environment&lt;br /&gt;
**            The environment to set when starting guests. Contains one VAR=VAL pair per line.&lt;br /&gt;
*tty&lt;br /&gt;
**            A symlink to the TTY device where input/output will be redirected from/to at startup via initscript.&lt;br /&gt;
===/etc/vservers/.defaults/apps/pkgmgmt===&lt;br /&gt;
*apt.conf&lt;br /&gt;
**            The default apt.conf which is going to be used. It is overridden by distribution specific configuration file.&lt;br /&gt;
*base&lt;br /&gt;
===/etc/vservers/.defaults/apps/vprocunhide===&lt;br /&gt;
*files&lt;br /&gt;
**            A list of files which will be made visible by vprocunhide. Wildcards are allowed and anything ending in '/' will be processed recursively. When this file exists, it overrides the defaults in SYSDEFAULTDIR/vprocunhide-files. The entries there must be absolute filenames inclusive the leading '/proc'.&lt;br /&gt;
===/etc/vservers/.defaults/apps/vshelper===&lt;br /&gt;
*debug&lt;br /&gt;
**            When existing, the vshelper execution will be traced.&lt;br /&gt;
*disabled&lt;br /&gt;
**            When existing, the vshelper functionality will be disabled for all vservers.&lt;br /&gt;
*logfile&lt;br /&gt;
**            The file where output will be logged to when vshelper is invoked from the kernel. This should point somewhere e.g. into /var/log.&lt;br /&gt;
*warning-disabled&lt;br /&gt;
**            When existing, sanity checks for the vshelper functionality will be skipped.&lt;br /&gt;
===/etc/vservers/.defaults/apps/vshelper/vshelper-methods===&lt;br /&gt;
**            * handler&lt;br /&gt;
**                  See vshelper/action.&lt;br /&gt;
===/etc/vservers/.defaults/apps/vunify===&lt;br /&gt;
*exclude&lt;br /&gt;
**            Static list of excluded files.&lt;br /&gt;
*pgkmgmt-force&lt;br /&gt;
**            When existing, information from packagemanagement will be used to create dynamic exclude-lists. This option requires that (a known) packagemanagement is configured for the vserver; else the requested operation will fail. Most tools assume 'on' as the default value.&lt;br /&gt;
*pkgmgmt-ignore&lt;br /&gt;
**            When existing, information from packagemanagement will not be used to create dynamic exclude-lists.&lt;br /&gt;
===/etc/vservers/.defaults/apps/vunify/hash===&lt;br /&gt;
**            A directory which will be used as the storage place for the vhashify command.&lt;br /&gt;
**            * id &lt;br /&gt;
**                  Points to a directory within the filesystems which are used for the vservers. There must be not more than one of such a directory per filesystem.&lt;br /&gt;
**            * method&lt;br /&gt;
**                  The used hash method.&lt;br /&gt;
===/etc/vservers/.defaults/init===&lt;br /&gt;
* mtab&lt;br /&gt;
**      Default mtab file&lt;br /&gt;
===/etc/vservers/.defaults/interfaces===&lt;br /&gt;
* vlandev&lt;br /&gt;
**      When this file exists, the steps which setup and destroy a VLAN interface will be executed.&lt;br /&gt;
==/etc/vservers/.distributions==&lt;br /&gt;
===/etc/vservers/.distributions/dist===&lt;br /&gt;
* apt.conf&lt;br /&gt;
**      The default apt.conf which is going to be used. It overrides the apt.conf from CONFDIR/.defaults/apps/pkgmgmt.&lt;br /&gt;
* dev&lt;br /&gt;
* execdir&lt;br /&gt;
**      Directory with all executables and libraries which are required for this distribution.&lt;br /&gt;
* initpost&lt;br /&gt;
**      Script which will be executed after packages are installed.&lt;br /&gt;
* initpre&lt;br /&gt;
**      Script which will be executed before packages will be installed.&lt;br /&gt;
* rpmlib&lt;br /&gt;
**      Directory which overrides /usr/lib/rpm.&lt;br /&gt;
===/etc/vservers/.distributions/dist/apt===&lt;br /&gt;
**      Default content of the /etc/apt/ directory.&lt;br /&gt;
===/etc/vservers/.distributions/dist/pkgs===&lt;br /&gt;
**      Contains files with packagenames.&lt;br /&gt;
*list&lt;br /&gt;
**            File which contains the name of packages. On top of file the special keywords '--reinstall' and '--can-fail' are possible.&lt;br /&gt;
===/etc/vservers/.distributions/dist/pubkeys===&lt;br /&gt;
**      Directory with GPG pubkeys which are used to sign the packages of this distribution.&lt;br /&gt;
===/etc/vservers/.distributions/dist/rpm===&lt;br /&gt;
**      Default content of the /etc/rpm directory.&lt;br /&gt;
===/etc/vservers/.distributions/dist/yum===&lt;br /&gt;
**      The default, yum-related content of the /etc directory.&lt;br /&gt;
*yum.conf&lt;br /&gt;
**            The master yum configuration file. It supports the @YUMETCDIR@, @YUMCACHEDIR@ and @YUMLOGDIR@ placeholder which will be replaced at vserver ... build time.&lt;br /&gt;
===/etc/vservers/.distributions/dist/yum.repos.d===&lt;br /&gt;
**      A directory with yum repositories.&lt;br /&gt;
==/etc/vservers/vserver-name==&lt;br /&gt;
      The configuration directory for the vserver vserver-name.&lt;br /&gt;
*bcapabilities&lt;br /&gt;
**[experimental; name is subject of possible change] Contains the system capabilities. See lib/bcaps-v13.c for possible values.&lt;br /&gt;
*cache&lt;br /&gt;
**Path of the storage area for cached information about this vserver.&lt;br /&gt;
*capabilities&lt;br /&gt;
**Contains per line a capability. This file is used for the 2.4 kernel only; for 2.6 use bcapabilities.&lt;br /&gt;
*ccapabilities&lt;br /&gt;
**[experimental; name is subject of possible change] Contains the context capabilities. See lib/ccaps-v13.c for possible values.&lt;br /&gt;
*context&lt;br /&gt;
**Contains the context which shall be used for the vserver.&lt;br /&gt;
*flags&lt;br /&gt;
**Contains per line a flag. See lib/cflags-v13.c for possible values.&lt;br /&gt;
*fstab&lt;br /&gt;
**The fstab file for the vserver. Entries in this file will be mounted within the network context of the host. Use the fstab.remote file when you want that the mounting happens in the network context of the vserver. In most cases the 'fstab' file should be used.&lt;br /&gt;
*fstab.remote&lt;br /&gt;
**The fstab file for the vserver. Entries in this file will be mounted within the network context of the host; this means that mount will be called as chbind &amp;lt;options&amp;gt; mount .... See fstab also.&lt;br /&gt;
*name&lt;br /&gt;
**Contains the name of the vserver. When not given, the basename of the directory will be assumed as this name.&lt;br /&gt;
*namespace&lt;br /&gt;
**Overrides the global nonamespace flag and enables namespace usage for the current vserver.&lt;br /&gt;
*namespace-cleanup&lt;br /&gt;
**Enable namespace cleanup for the current vserver.&lt;br /&gt;
*nice&lt;br /&gt;
**The nice-level on which the vserver will be started.&lt;br /&gt;
*nonamespace&lt;br /&gt;
**Disables namespace usage for the current vserver. In this mode the /vservers directory must have the 'barrier' attribute. Else, common chroot(2) exploits are possible.&lt;br /&gt;
*nonamespace-cleanup&lt;br /&gt;
**Overrides the global namespace-cleanup flag and disables namespace cleanup for the current vserver.&lt;br /&gt;
*personality&lt;br /&gt;
**Used to set the personality of the vserver. First line in the file is the personality-type followed by flags (one item per line). See /usr/include/linux/personality.h for possible values.&lt;br /&gt;
*run&lt;br /&gt;
**Points to a file which will contain the XID of the running vserver. When the vserver is stopped, this can be a dangling symlink.&lt;br /&gt;
*schedule&lt;br /&gt;
**[experimental; name is subject of possible change] Contains the scheduler parameters, one per line. The Hard CPU limit uses a mechanism called a Token Bucket. the concept is simple: you have a bucket of a certain size which is filled with a specified amount R of tokens each interval T until the maximum is reached (excess tokens are spilled). At each timer tick, a running process consumes one token from the bucket, unless the bucket is empty. If the bucket is empty the process is put in the hold queue. When the bucket has been refilled to at least M tokens, all on hold processes are rescheduled. See the Linux VServer Wiki for more information about this file.&lt;br /&gt;
*shell&lt;br /&gt;
**Contains the pathname of the shell which will be used by the &amp;quot;vserver ... enter&amp;quot; command.&lt;br /&gt;
*vdir&lt;br /&gt;
**Path of the vserver root directory.&lt;br /&gt;
==/etc/vservers/vserver-name/apps==&lt;br /&gt;
===/etc/vservers/vserver-name/apps/init===&lt;br /&gt;
*cmd.prepare&lt;br /&gt;
**            The command which is used to setup the init-system (e.g. to set the runlevel in the utmp-file). Each option must be on a separate line.&lt;br /&gt;
*cmd.start&lt;br /&gt;
**            The command which is used to start the vserver. Each option must be on a separate line.&lt;br /&gt;
*cmd.start-sync&lt;br /&gt;
**            The command which is used to wait on the vserver after it has been started. Each option must be on a separate line. This file will be ignored when the sync flag does not exist and the '--sync' option was not used.&lt;br /&gt;
*cmd.stop&lt;br /&gt;
**            The command which is used to stop the vserver. Each option must be on a separate line.&lt;br /&gt;
*cmd.stop-sync&lt;br /&gt;
**            The command which is used to wait on the vserver after it has been stopped. Each option must be on a separate line. This file will be ignored when the sync flag does not exist and the '--sync' option was not used.&lt;br /&gt;
*depends&lt;br /&gt;
**            This file is used to configure vservers which must be running before the current vserver can be started. At shutdown, the current vserver will be stopped before its dependencies. Content of this file are vserver ids (one name per line).&lt;br /&gt;
*environment&lt;br /&gt;
**            The environment to set when starting the guest. Contains one VAR=VAL pair per line.&lt;br /&gt;
*killseq&lt;br /&gt;
**            Contains the 'signal [wait signal]*' sequence which is used to stop the vserver.&lt;br /&gt;
*mark&lt;br /&gt;
**            This file is used to mark group of vservers which shall be started/stopped together by the initscript. Content is a simple string like 'default'.&lt;br /&gt;
*mtab&lt;br /&gt;
**            The initial-mtab which will be used for the vserver.&lt;br /&gt;
*runlevel&lt;br /&gt;
**            The start runlevel.&lt;br /&gt;
*runlevel.start&lt;br /&gt;
**            The start runlevel.&lt;br /&gt;
*runlevel.stop&lt;br /&gt;
**            The stop runlevel.&lt;br /&gt;
*style&lt;br /&gt;
**            Contains the init-style.&lt;br /&gt;
*sync&lt;br /&gt;
**            If this file is not present, all 'cmd.*-sync files will be ignored.&lt;br /&gt;
*tty&lt;br /&gt;
**            A symlink to the TTY device where input/output will be redirected from/to at startup via initscript.&lt;br /&gt;
===/etc/vservers/vserver-name/apps/vshelper===&lt;br /&gt;
*action&lt;br /&gt;
**            The action which is going to be executed when a vshelper event occurs. The default value is 'restart', but there can be defined own methods by placing scripts into the vshelper-methods directories. These scripts are fed with the same arguments as the vshelper script.&lt;br /&gt;
*debug&lt;br /&gt;
**            When existing, the vshelper execution will be traced for this vserver.&lt;br /&gt;
*disabled&lt;br /&gt;
**            When existing, the vshelper functionality will be disabled for this vserver.&lt;br /&gt;
*event&lt;br /&gt;
**            When existing, these scripts will be executed *instead* of the default handler defined in 'action'. Their name must match the event which caused the execution of vshelper; e.g. 'restart' or 'poweroff'. See the vs_reboot() function in the kernel for more details.&lt;br /&gt;
*sync-timeout&lt;br /&gt;
**            The timeout in seconds which is used when synchronising vserver startup/shutdown with the vshelper. When not set, 30 seconds will be assumed.&lt;br /&gt;
*warning-disabled&lt;br /&gt;
**            When existing, sanity checks for the vshelper functionality will be skipped.&lt;br /&gt;
===/etc/vservers/vserver-name/apps/vshelper-methods===&lt;br /&gt;
*handler&lt;br /&gt;
**            See vshelper/action.&lt;br /&gt;
===/etc/vservers/vserver-name/apps/vunify===&lt;br /&gt;
**      This directory contains configuration data required for vserver unification.&lt;br /&gt;
*exclude&lt;br /&gt;
**            Static list of files which are excluded for unification. This list supports an rsync-like syntax: when a file is prefixed by '*', it is a candidate for unification; when there is no prefix or a '-' or a '~' it will be excluded. Shell-wildcards are allowed for the filenames.&lt;br /&gt;
**            When used with vcopy, the '~' prefix prevents copying of the file entirely (e.g. for keyfiles). With this tool, the file will be copied instead of hardlinked when the '-' prefix is used.&lt;br /&gt;
*pgkmgmt-force&lt;br /&gt;
**            When existing, information from packagemanagement will be used to create dynamic exclude-lists. This option requires that (a known) packagemanagement is configured for the vserver; else the requested operation will fail. Most tools assume 'on' as the default value.&lt;br /&gt;
*pkgmgmt-ignore&lt;br /&gt;
**            When existing, information from packagemanagement will not be used to create dynamic exclude-lists.&lt;br /&gt;
*refserver.X&lt;br /&gt;
**            These are symlinks to the configuration directory (e.g. CONFDIR/vservers/&amp;lt;id&amp;gt;) of a refserver. There may be multiple such symlinks but they must be prefixed by 'refserver.' and will be processed in alphanumerical order.&lt;br /&gt;
====/etc/vservers/vserver-name/apps/vunify/hash=====&lt;br /&gt;
**            A directory which will be used as the storage place for the vhashify command.&lt;br /&gt;
**            * id&lt;br /&gt;
**                  Points to a directory within the filesystems which are used for the vservers. There must be not more than one of such a directory per filesystem.&lt;br /&gt;
**            * method&lt;br /&gt;
**                  The used hash method.&lt;br /&gt;
==/etc/vservers/vserver-name/cpuset==&lt;br /&gt;
* cpu_exclusive&lt;br /&gt;
**      Is the CPU assignment exclusive?&lt;br /&gt;
* cpus&lt;br /&gt;
**      The list of CPUs in this cpuset&lt;br /&gt;
* mems&lt;br /&gt;
**      The list of Memory Nodes in this cpuset&lt;br /&gt;
* mems_exclusive&lt;br /&gt;
**      Is the memory node assignment exclusive?&lt;br /&gt;
* name&lt;br /&gt;
**      The name of the cpuset for this vserver&lt;br /&gt;
* nocreate&lt;br /&gt;
**      When this file exists, the cpuset will be assumed to exist already&lt;br /&gt;
==/etc/vservers/vserver-name/dlimits==&lt;br /&gt;
===/etc/vservers/vserver-name/dlimits/dlimit===&lt;br /&gt;
*directory&lt;br /&gt;
**            The directory to which the limit should be applied&lt;br /&gt;
*inodes_total&lt;br /&gt;
**            The amount of inodes this vserver should be limited to&lt;br /&gt;
*reserved&lt;br /&gt;
**            How much space (percentage-wise) should be reserved for the root user&lt;br /&gt;
*space_total&lt;br /&gt;
**            The amount of space this vserver should be limited to (measured in blocks of 1024 bytes)&lt;br /&gt;
==/etc/vservers/vserver-name/interfaces==&lt;br /&gt;
* bcast&lt;br /&gt;
**      The default broadcast address.&lt;br /&gt;
* dev&lt;br /&gt;
**      The default network device.&lt;br /&gt;
* mask&lt;br /&gt;
**      The default network mask.&lt;br /&gt;
* novlandev&lt;br /&gt;
**      When this file exists, the steps which setup and destroy a VLAN interface will be skipped. This overrides the global vlandev setting for this vserver.&lt;br /&gt;
* prefix&lt;br /&gt;
**      The default network prefix-length.&lt;br /&gt;
* scope&lt;br /&gt;
**      The default scope of the network interfaces.&lt;br /&gt;
* vlandev&lt;br /&gt;
**      When this file exists, the steps which setup and destroy a VLAN interface will be executed for all interfaces of this vserver.&lt;br /&gt;
===/etc/vservers/vserver-name/interfaces/iface===&lt;br /&gt;
**      'iface' is an arbitrary name for the interface; the value itself is not important but may be interesting regarding interface-creation and usage with chbind. Both happens in alphabetical order and numbers like '00' are good names for these directories.&lt;br /&gt;
*bcast&lt;br /&gt;
**            The broadcast address.&lt;br /&gt;
*dev&lt;br /&gt;
**            The network device.&lt;br /&gt;
*disabled&lt;br /&gt;
**            When this file exists, this interface will be ignored.&lt;br /&gt;
*ip&lt;br /&gt;
**            The ip which will be assigned to this interface.&lt;br /&gt;
*mask&lt;br /&gt;
**            The network mask.&lt;br /&gt;
*name&lt;br /&gt;
**            When this file exists, the interface will be named with the text in this file. Without such an entry, the IP will not be shown by ifconfig but by ip addr ls only. Such a labeled interface is known as an &amp;quot;alias&amp;quot; also (e.g. 'eth0:foo').&lt;br /&gt;
*nodev&lt;br /&gt;
**            When this file exists, the interface will be assumed to exist already. This can be used to assign primary interfaces which are created by the host or another vserver.&lt;br /&gt;
*novlandev&lt;br /&gt;
**            When this file exists, the steps which setup and destroy a VLAN interface will be skipped. This will override the global vlandev and the per-guest vlandev.&lt;br /&gt;
*prefix&lt;br /&gt;
**            The network prefix-length.&lt;br /&gt;
*scope&lt;br /&gt;
**            The scope of the network interface.&lt;br /&gt;
*vlandev&lt;br /&gt;
**            When this file exists, the steps which setup and destroy a VLAN interface will be executed.&lt;br /&gt;
==/etc/vservers/vserver-name/rlimits==&lt;br /&gt;
**A directory with resource limits. Possible resources are cpu, fsize, data, stack, core, rss, nproc, nofile, memlock, as and locks. This configuration will be honored for kernel 2.6 only.&lt;br /&gt;
* resource&lt;br /&gt;
**      A file which contains the hard- and soft-limit of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
* resource.hard&lt;br /&gt;
**      A file which contains the hard- of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
* resource.min&lt;br /&gt;
**      A file which contains the guaranted minimum of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
* resource.soft&lt;br /&gt;
**      A file which contains the soft- of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
==/etc/vservers/vserver-name/scripts==&lt;br /&gt;
**A directory for scripts. By default, when one of these scripts will be executed, the execution of defaultscripts (within .../.defaults/scripts) will be skipped. To execute them nevertheless, the $DONT_SKIP_DEFAULTS environment variable must be set by one of the in-shellcontext scripts (the non-executable ones).&lt;br /&gt;
* initialize&lt;br /&gt;
**      The scriptlet which will be executed before the root filesystem is mounted and the configuration has been loaded. Before executing the script, the configuration directory will be made the working directory.&lt;br /&gt;
* post-start&lt;br /&gt;
**      The scriptlet which will be executed after the vserver has been started. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
* post-stop&lt;br /&gt;
**      The scriptlet which will be executed after the vserver has been stopped, but before the directories will be umounted and the the interfaces disabled. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
* postpost-stop&lt;br /&gt;
**      The scriptlet which will be executed after the vserver has been stopped completely. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
* pre-start&lt;br /&gt;
**      The scriptlet which will be executed after network-interfaces were enabled and the directories mounted, but before the vserver itself has been started. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
* pre-stop&lt;br /&gt;
**      The scriptlet which will be executed before the vserver will be stopped. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
* prepre-start&lt;br /&gt;
**      The scriptlet which will be executed before the network-interfaces are enabled and the directories are mounted. Before executing the script, the configuration directory will be made the working directory.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/initialize.d===&lt;br /&gt;
**      Repository of initialize like scripts. Before executing the script, the configuration directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See initialize.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/post-start.d===&lt;br /&gt;
**      Repository of post-start like scripts. Before executing these scripts, the vserver root directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See post-start.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/post-stop.d===&lt;br /&gt;
**      Repository of post-stop like scripts. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See post-stop.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/postpost-stop.d===&lt;br /&gt;
**      Repository of postpost-stop like scripts. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See postpost-stop.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/pre-start.d===&lt;br /&gt;
**      Repository of pre-start like scripts. Before executing these scripts, the vserver root directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See pre-start.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/pre-stop.d===&lt;br /&gt;
**      Repository of pre-stop like scripts. Before executing the script, the vserver root directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See pre-stop.&lt;br /&gt;
===/etc/vservers/vserver-name/scripts/prepre-start.d===&lt;br /&gt;
**      Repository of prepre-start like scripts. Before executing the script, the configuration directory will be made the working directory.&lt;br /&gt;
*script&lt;br /&gt;
**            See prepre-start.&lt;br /&gt;
===/etc/vservers/vserver-name/ulimits===&lt;br /&gt;
**A directory with ulimits. Possible resources are cpu, data, fsize, locks, memlock, nofile, nproc, rss and/or stack. This configuration will be honored for kernel 2.4 only.&lt;br /&gt;
* resource&lt;br /&gt;
**      A file which contains the hard- and soft-limit of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
* resource.hard&lt;br /&gt;
**      A file which contains the hard- of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
* resource.soft&lt;br /&gt;
**      A file which contains the soft- of the given resource in the first line. The special keyword 'inf' is recognized.&lt;br /&gt;
===/etc/vservers/vserver-name/uts===&lt;br /&gt;
* context&lt;br /&gt;
**      The context-name of the vserver. This file is listed for completeness only; the 'context' name is used and set internally by the util-vserver tools and can *not* be modified.&lt;br /&gt;
* domainname&lt;br /&gt;
**      The NIS domainname of the vserver&lt;br /&gt;
* machine&lt;br /&gt;
**      The machine-type of the vserver&lt;br /&gt;
* nodename&lt;br /&gt;
**      The node-/hostname of the vserver&lt;br /&gt;
* release&lt;br /&gt;
**      The OS-release of the vserver&lt;br /&gt;
* sysname&lt;br /&gt;
**      The sysname of the vserver&lt;br /&gt;
* version&lt;br /&gt;
**      The OS-version of the vserver&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Installation_on_Redhat</id>
		<title>Installation on Redhat</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Installation_on_Redhat"/>
				<updated>2006-11-30T16:07:01Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To start service at boot&lt;br /&gt;
&lt;br /&gt;
*For redhat based distrib&lt;br /&gt;
 chkconfig vprocunhide on&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Installation_on_Redhat</id>
		<title>Installation on Redhat</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Installation_on_Redhat"/>
				<updated>2006-11-30T16:06:48Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To start service at boot&lt;br /&gt;
&lt;br /&gt;
# For redhat based distrib&lt;br /&gt;
chkconfig vprocunhide on&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Installation_on_Linux_2.6</id>
		<title>Installation on Linux 2.6</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Installation_on_Linux_2.6"/>
				<updated>2006-11-30T16:06:08Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Compiling and Installing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This guide will explain how to install a Linux-VServer kernel and util-vserver manually from source. It is assumed that you have basic knowledge about building a custom kernel, i.e. that you know which stuff to turn on in the kernel configuration. Of course some Linux-VServer specific options are explained here.&lt;br /&gt;
&lt;br /&gt;
== Manual Kernel Compilation ==&lt;br /&gt;
&lt;br /&gt;
You might ask yourself, why should i build a custom kernel? Manually configuring a kernel is often seen as the most difficult procedure a Linux user ever has to perform. Nothing is less true -- after configuring a couple of kernels you don't even remember that it was difficult ;)&lt;br /&gt;
&lt;br /&gt;
However, one thing is true: you must know your system when you start configuring a kernel manually. Nevertheless there good reasons to build your kernel manually:&lt;br /&gt;
&lt;br /&gt;
* Your distribution does not have a prebuilt Linux-VServer kernel&lt;br /&gt;
* Your distribution does not have the latest and greatest&lt;br /&gt;
* You don't want to install bloated prebuilt kernels&lt;br /&gt;
* You want a monolithic kernel and your distribution uses modules&lt;br /&gt;
* You can tell everyone that you built your kernels manually ;)&lt;br /&gt;
&lt;br /&gt;
If you still intend to built your own kernel, read on. Otherwise have a look at our [[Documentation]] section for how to install a prebuilt Linux-VServer kernel for your distribution.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You'll need the vanilla kernel sources (i.e. those from [http://www.kernel.org kernel.org]) and (of course) a Linux-VServer patch for the kernel version you intend to use. You can find links to both files in our [[Downloads]] section.&lt;br /&gt;
&lt;br /&gt;
In this document we will use Linux 2.6.17.13 with Linux-VServer 2.0.2.1.&lt;br /&gt;
&lt;br /&gt;
First, you have to create a directory for the sources, if you already have one, feel free to skip this step and/or adjust the paths to your needs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Create a directory for our sources&lt;br /&gt;
mkdir ~/src&lt;br /&gt;
&lt;br /&gt;
# Switch to that directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that we have a place to store our sources, we need to fetch them. We start with the vanilla sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get Linux 2.6.17.13 sources&lt;br /&gt;
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.13.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract them&lt;br /&gt;
tar xjf linux-2.6.17.13.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now it is time to get the Linux-VServer patch and apply it to the sources. While we're at it, I tell you a nice trick I learned from Bertl, that allows you to keep a lot source trees on your disk without using up lots of disk space (and this also speeds up 'diff' a lot, which is really nice if you do kernel-hacking). What we do is creating a hard-linked copy of our sources and patch this copy with the Linux-VServer patch. That way, only the patched files use additional disk space (and because hard-linked files are equal by definition, diff doesn't need to compare them).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get the Linux-VServer 2.0.2.1 patch&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/kernel/vs2.0/patch-2.6.17.13-vs2.0.2.1.diff.bz2&lt;br /&gt;
&lt;br /&gt;
# Create a hard-linked copy of the vanilla sources, this will get the Linux-VServer patch applied&lt;br /&gt;
cp -la linux-2.6.17.13 linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Switch to that new directory&lt;br /&gt;
cd linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Patch the sources&lt;br /&gt;
bzcat ../patch-2.6.17.13-vs2.0.2.1.diff.bz2 | patch -p1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you have two sources, the vanilla sources for 2.6.17.13 and the Linux-VServer sources for 2.6.17.13-vs2.0.2.1. You might ask &amp;quot;Why do I need two source trees at all? I only want one kernel!&amp;quot; and that's a good question.&lt;br /&gt;
&lt;br /&gt;
Here's one answer: Updates! If a new vanilla kernel is released, you can just download the patch from your version to the new version. Otherwise, if you would have applied the patch to your one and only vanilla source tree, you would not be able to do this. THe same applies for new Linux-VServer releases. That is, if a new Linux-VServer patch is available, you can simply create another hardlinked copy of your vanilla sources and apply the new patch using the copy. This can really save you time (and bandwith), since you can keep everything you might need, without wasting a lot of disk space.&lt;br /&gt;
&lt;br /&gt;
But be aware that this needs some disciple when hacking the source. Because hard-linked files share the same data on the disk, you need to make sure that your editor does ''The Right Thing'', otherwise you might mess up all your source trees...&lt;br /&gt;
&lt;br /&gt;
=== Configuring the Kernel ===&lt;br /&gt;
&lt;br /&gt;
Now go to your kernel source directory and execute make menuconfig. This will fire up an ncurses-based configuration menu. (Of course you can use whatever configuration method you like, there is a text based one (make config), a GTK based one (make gconfig), and even a QT based one (make xconfig))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Configure the kernel using a ncurses based menu&lt;br /&gt;
make menuconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is out of the scope of this guide to explain all the available configuration options. If you feel unsure about certain options either leave it with the default value, or consult your distribution manuals for help.&lt;br /&gt;
&lt;br /&gt;
Nevertheless, we will explain the Linux-VServer configuration options, of course. Depending on your version your configuration options may look similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Linux VServer ---&amp;gt;&lt;br /&gt;
  [*] Enable Legacy Kernel API&lt;br /&gt;
  [ ]   Show a Legacy Version ID&lt;br /&gt;
  [ ] Disable Legacy Networking Kernel API        (2.0.x only)&lt;br /&gt;
  [*] Enable Legacy Networking Kernel API         (2.1.x only)&lt;br /&gt;
  [ ] Remap Source IP Address&lt;br /&gt;
  [*] Enable COW Immutable Link Breaking          (2.1.x only)&lt;br /&gt;
  [*] Enable Virtualized Guest Time               (2.1.x only)&lt;br /&gt;
  [*] Enable Proc Security&lt;br /&gt;
  [*] Enable Hard CPU Limits&lt;br /&gt;
  [*]   Avoid idle CPUs by skipping Time          (2.1.x only)&lt;br /&gt;
  [*]   Limit the IDLE task&lt;br /&gt;
      Persistent Inode Tagging (UID24/GID24)  ---&amp;gt;&lt;br /&gt;
  [ ] Tag NFSD User Auth and Files&lt;br /&gt;
  [ ] Enable Inode Tag Propagation                (2.1.x only)&lt;br /&gt;
  [*] Honor Privacy Aspects of Guests             (2.1.x only)&lt;br /&gt;
  [ ] VServer Debugging Code&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Enable Legacy Kernel API&lt;br /&gt;
: This enables the legacy API used in vs1.xx, maintaining compatibility with older vserver tools, and guest images that are configured using the legacy method.&lt;br /&gt;
&lt;br /&gt;
; Show a Legacy Version ID&lt;br /&gt;
: This shows a special legacy version to very old tools which do not handle the current version correctly. This will probably disable some features of newer tools so better avoid it, unless you really, really need it for backwards compatibility.&lt;br /&gt;
&lt;br /&gt;
; Enable/Disable Legacy Networking Kernel API&lt;br /&gt;
: This enables/disables the legacy networking API which is required by the chbind tool in util-vserver &amp;lt;= 0.30.209. Do not disable it unless you exactly know what you are doing.&lt;br /&gt;
&lt;br /&gt;
; Remap Source IP Address&lt;br /&gt;
: This allows to remap the source IP address of 'local' connections from 127.0.0.1 to the first assigned guest IP.&lt;br /&gt;
&lt;br /&gt;
; Enable COW Immutable Link Breaking&lt;br /&gt;
: This enables the COW (Copy-On-Write) link break code. It allows you to treat [[Unification|unified files]] like normal files when writing to them (which will implicitely break the link and create a copy of the unified file)&lt;br /&gt;
&lt;br /&gt;
; Enable Virtualized Guest Time&lt;br /&gt;
: This enables per guest time offsets to allow for adjusting the system clock individually per guest. This adds some overhead to the time functions and therefore should not be enabled without good reason.&lt;br /&gt;
&lt;br /&gt;
; Enable Proc Security&lt;br /&gt;
: This configures [[Secure ProcFS Entries|ProcFS security]] to initially hide non-process entries for all contexts except the main and spectator context (i.e. for all guests), which is a secure default.&lt;br /&gt;
&lt;br /&gt;
; Enable Hard CPU Limits&lt;br /&gt;
: This will compile in code that allows the [[CPU Scheduler|Token Bucket Scheduler]] to put processes on hold when a context's tokens are depleted (provided that its per-context sched_hard flag is set).&lt;br /&gt;
&lt;br /&gt;
; Avoid idle CPUs by skipping Time&lt;br /&gt;
: This option allows the scheduler to artificially advance time (per cpu) when otherwise the idle task would be scheduled, thus keeping the cpu busy and sharing the available resources among certain contexts.&lt;br /&gt;
&lt;br /&gt;
; Limit the IDLE task&lt;br /&gt;
: Limit the idle slices, so the the next context will be scheduled as soon as possible. This might improve interactivity and latency, but will also marginally increase scheduling overhead.&lt;br /&gt;
&lt;br /&gt;
; Persistent Inode Tagging&lt;br /&gt;
: This adds persistent context information to filesystems mounted with the tagxid option. [[Filesystem Tagging|Tagging]] is a requirement for per-context [[Disk Limits and Quota]].&lt;br /&gt;
&lt;br /&gt;
; Tag NFSD User Auth and Files&lt;br /&gt;
: Enable this if you do want the in-kernel NFS Server to use the xid tagging specified above.&lt;br /&gt;
&lt;br /&gt;
; Enable Inode Tag Propagation&lt;br /&gt;
: This allows for the tagid= mount option to specify a tagid which is to be used for the entire mount tree.&lt;br /&gt;
&lt;br /&gt;
; Honor Privacy Aspects of Guests&lt;br /&gt;
: When enabled, most context checks will disallow access to structures assigned to a specific context, like ptys or loop devices.&lt;br /&gt;
&lt;br /&gt;
; VServer Debugging Code&lt;br /&gt;
: Set this to yes if you want to be able to activate debugging output at runtime. It adds a probably small overhead to all vserver related functions and increases the kernel size by about 20k.&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that your kernel is configured, it is time to compile and install it. Exit the configuration and start the compilation process: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# make &amp;amp;&amp;amp; make modules_install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you don't happen to have a really fast box, it is a good time to get a new cup of coffee now ;)&lt;br /&gt;
&lt;br /&gt;
When the kernel has finished compiling, you have to copy the kernel image to your /boot partition and configure your boot loader. If you don't know how to do this, please consult your distribution manual or ask [http://www.google.com Google] for help.&lt;br /&gt;
&lt;br /&gt;
== Manual util-vserver Compilation ==&lt;br /&gt;
&lt;br /&gt;
The kernel alone does not help you, you also need some tools to exploit all those new features you got, so let's get them.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You will have to download the latest util-vserver source tarball from our [[Downloads]] section. In this guide we will use util-vserver-0.30.211.&lt;br /&gt;
&lt;br /&gt;
As a first step, of course, we need to get the sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Go to our source directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&lt;br /&gt;
# Get the sources for util-vserver&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract the sources&lt;br /&gt;
tar xjf util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that we have extracted the util-vserver source we have to do the usual configure, make, make install chain. While configuring the tools you may get some error messages about missing stuff, for example dietlibc, vconfig and e2fs headers. The error messages are accompanied by explanations what you should do, so read them carefully.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Switch to the util-vserver source directory&lt;br /&gt;
cd util-vserver-0.30.211&lt;br /&gt;
&lt;br /&gt;
# Configure the sources (you may want to adjust settings here, the defaults work, but may not suite your needs)&lt;br /&gt;
./configure --prefix=/&lt;br /&gt;
&lt;br /&gt;
# Build the tools&lt;br /&gt;
make&lt;br /&gt;
&lt;br /&gt;
# Install the tools&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
# It's a good point to fix the /proc entries for the guests&lt;br /&gt;
/etc/init.d/vprocunhide restart (this path depends on configuration, see output of 'vserver-info')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing your setup ===&lt;br /&gt;
&lt;br /&gt;
To ensure that your setup works we have created two small test scripts. The testme.sh script ensures basic functionality whereas the testfs.sh script is for inode attribute testing for various filesystems.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testme.sh&lt;br /&gt;
&lt;br /&gt;
# run the test script&lt;br /&gt;
./testme.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Be careful! The testfs.sh script might easily reformat your hard disk :)'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make a loopback file&lt;br /&gt;
dd bs=1024k count=1024 if=/dev/zero of=1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# setup the loopback&lt;br /&gt;
losetup /dev/loop0 1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# run the test script for legacy mode&lt;br /&gt;
./testfs.sh -l -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&lt;br /&gt;
# run the test script for new-style config&lt;br /&gt;
./testfs.sh -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the scripts show any error, be sure to read [[Report a Bug|how to report a bug]] and contact the Linux-VServer Developers for help. See [[Communicate]] for details.&lt;br /&gt;
&lt;br /&gt;
== Where to go from here ==&lt;br /&gt;
&lt;br /&gt;
Now that your setup is complete and working as expected, it is time to create your first guest system. Read on at [[Building Guest Systems]].&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Installation_on_Linux_2.6</id>
		<title>Installation on Linux 2.6</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Installation_on_Linux_2.6"/>
				<updated>2006-11-30T16:05:46Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Compiling and Installing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This guide will explain how to install a Linux-VServer kernel and util-vserver manually from source. It is assumed that you have basic knowledge about building a custom kernel, i.e. that you know which stuff to turn on in the kernel configuration. Of course some Linux-VServer specific options are explained here.&lt;br /&gt;
&lt;br /&gt;
== Manual Kernel Compilation ==&lt;br /&gt;
&lt;br /&gt;
You might ask yourself, why should i build a custom kernel? Manually configuring a kernel is often seen as the most difficult procedure a Linux user ever has to perform. Nothing is less true -- after configuring a couple of kernels you don't even remember that it was difficult ;)&lt;br /&gt;
&lt;br /&gt;
However, one thing is true: you must know your system when you start configuring a kernel manually. Nevertheless there good reasons to build your kernel manually:&lt;br /&gt;
&lt;br /&gt;
* Your distribution does not have a prebuilt Linux-VServer kernel&lt;br /&gt;
* Your distribution does not have the latest and greatest&lt;br /&gt;
* You don't want to install bloated prebuilt kernels&lt;br /&gt;
* You want a monolithic kernel and your distribution uses modules&lt;br /&gt;
* You can tell everyone that you built your kernels manually ;)&lt;br /&gt;
&lt;br /&gt;
If you still intend to built your own kernel, read on. Otherwise have a look at our [[Documentation]] section for how to install a prebuilt Linux-VServer kernel for your distribution.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You'll need the vanilla kernel sources (i.e. those from [http://www.kernel.org kernel.org]) and (of course) a Linux-VServer patch for the kernel version you intend to use. You can find links to both files in our [[Downloads]] section.&lt;br /&gt;
&lt;br /&gt;
In this document we will use Linux 2.6.17.13 with Linux-VServer 2.0.2.1.&lt;br /&gt;
&lt;br /&gt;
First, you have to create a directory for the sources, if you already have one, feel free to skip this step and/or adjust the paths to your needs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Create a directory for our sources&lt;br /&gt;
mkdir ~/src&lt;br /&gt;
&lt;br /&gt;
# Switch to that directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that we have a place to store our sources, we need to fetch them. We start with the vanilla sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get Linux 2.6.17.13 sources&lt;br /&gt;
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.13.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract them&lt;br /&gt;
tar xjf linux-2.6.17.13.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now it is time to get the Linux-VServer patch and apply it to the sources. While we're at it, I tell you a nice trick I learned from Bertl, that allows you to keep a lot source trees on your disk without using up lots of disk space (and this also speeds up 'diff' a lot, which is really nice if you do kernel-hacking). What we do is creating a hard-linked copy of our sources and patch this copy with the Linux-VServer patch. That way, only the patched files use additional disk space (and because hard-linked files are equal by definition, diff doesn't need to compare them).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get the Linux-VServer 2.0.2.1 patch&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/kernel/vs2.0/patch-2.6.17.13-vs2.0.2.1.diff.bz2&lt;br /&gt;
&lt;br /&gt;
# Create a hard-linked copy of the vanilla sources, this will get the Linux-VServer patch applied&lt;br /&gt;
cp -la linux-2.6.17.13 linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Switch to that new directory&lt;br /&gt;
cd linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Patch the sources&lt;br /&gt;
bzcat ../patch-2.6.17.13-vs2.0.2.1.diff.bz2 | patch -p1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you have two sources, the vanilla sources for 2.6.17.13 and the Linux-VServer sources for 2.6.17.13-vs2.0.2.1. You might ask &amp;quot;Why do I need two source trees at all? I only want one kernel!&amp;quot; and that's a good question.&lt;br /&gt;
&lt;br /&gt;
Here's one answer: Updates! If a new vanilla kernel is released, you can just download the patch from your version to the new version. Otherwise, if you would have applied the patch to your one and only vanilla source tree, you would not be able to do this. THe same applies for new Linux-VServer releases. That is, if a new Linux-VServer patch is available, you can simply create another hardlinked copy of your vanilla sources and apply the new patch using the copy. This can really save you time (and bandwith), since you can keep everything you might need, without wasting a lot of disk space.&lt;br /&gt;
&lt;br /&gt;
But be aware that this needs some disciple when hacking the source. Because hard-linked files share the same data on the disk, you need to make sure that your editor does ''The Right Thing'', otherwise you might mess up all your source trees...&lt;br /&gt;
&lt;br /&gt;
=== Configuring the Kernel ===&lt;br /&gt;
&lt;br /&gt;
Now go to your kernel source directory and execute make menuconfig. This will fire up an ncurses-based configuration menu. (Of course you can use whatever configuration method you like, there is a text based one (make config), a GTK based one (make gconfig), and even a QT based one (make xconfig))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Configure the kernel using a ncurses based menu&lt;br /&gt;
make menuconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is out of the scope of this guide to explain all the available configuration options. If you feel unsure about certain options either leave it with the default value, or consult your distribution manuals for help.&lt;br /&gt;
&lt;br /&gt;
Nevertheless, we will explain the Linux-VServer configuration options, of course. Depending on your version your configuration options may look similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Linux VServer ---&amp;gt;&lt;br /&gt;
  [*] Enable Legacy Kernel API&lt;br /&gt;
  [ ]   Show a Legacy Version ID&lt;br /&gt;
  [ ] Disable Legacy Networking Kernel API        (2.0.x only)&lt;br /&gt;
  [*] Enable Legacy Networking Kernel API         (2.1.x only)&lt;br /&gt;
  [ ] Remap Source IP Address&lt;br /&gt;
  [*] Enable COW Immutable Link Breaking          (2.1.x only)&lt;br /&gt;
  [*] Enable Virtualized Guest Time               (2.1.x only)&lt;br /&gt;
  [*] Enable Proc Security&lt;br /&gt;
  [*] Enable Hard CPU Limits&lt;br /&gt;
  [*]   Avoid idle CPUs by skipping Time          (2.1.x only)&lt;br /&gt;
  [*]   Limit the IDLE task&lt;br /&gt;
      Persistent Inode Tagging (UID24/GID24)  ---&amp;gt;&lt;br /&gt;
  [ ] Tag NFSD User Auth and Files&lt;br /&gt;
  [ ] Enable Inode Tag Propagation                (2.1.x only)&lt;br /&gt;
  [*] Honor Privacy Aspects of Guests             (2.1.x only)&lt;br /&gt;
  [ ] VServer Debugging Code&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Enable Legacy Kernel API&lt;br /&gt;
: This enables the legacy API used in vs1.xx, maintaining compatibility with older vserver tools, and guest images that are configured using the legacy method.&lt;br /&gt;
&lt;br /&gt;
; Show a Legacy Version ID&lt;br /&gt;
: This shows a special legacy version to very old tools which do not handle the current version correctly. This will probably disable some features of newer tools so better avoid it, unless you really, really need it for backwards compatibility.&lt;br /&gt;
&lt;br /&gt;
; Enable/Disable Legacy Networking Kernel API&lt;br /&gt;
: This enables/disables the legacy networking API which is required by the chbind tool in util-vserver &amp;lt;= 0.30.209. Do not disable it unless you exactly know what you are doing.&lt;br /&gt;
&lt;br /&gt;
; Remap Source IP Address&lt;br /&gt;
: This allows to remap the source IP address of 'local' connections from 127.0.0.1 to the first assigned guest IP.&lt;br /&gt;
&lt;br /&gt;
; Enable COW Immutable Link Breaking&lt;br /&gt;
: This enables the COW (Copy-On-Write) link break code. It allows you to treat [[Unification|unified files]] like normal files when writing to them (which will implicitely break the link and create a copy of the unified file)&lt;br /&gt;
&lt;br /&gt;
; Enable Virtualized Guest Time&lt;br /&gt;
: This enables per guest time offsets to allow for adjusting the system clock individually per guest. This adds some overhead to the time functions and therefore should not be enabled without good reason.&lt;br /&gt;
&lt;br /&gt;
; Enable Proc Security&lt;br /&gt;
: This configures [[Secure ProcFS Entries|ProcFS security]] to initially hide non-process entries for all contexts except the main and spectator context (i.e. for all guests), which is a secure default.&lt;br /&gt;
&lt;br /&gt;
; Enable Hard CPU Limits&lt;br /&gt;
: This will compile in code that allows the [[CPU Scheduler|Token Bucket Scheduler]] to put processes on hold when a context's tokens are depleted (provided that its per-context sched_hard flag is set).&lt;br /&gt;
&lt;br /&gt;
; Avoid idle CPUs by skipping Time&lt;br /&gt;
: This option allows the scheduler to artificially advance time (per cpu) when otherwise the idle task would be scheduled, thus keeping the cpu busy and sharing the available resources among certain contexts.&lt;br /&gt;
&lt;br /&gt;
; Limit the IDLE task&lt;br /&gt;
: Limit the idle slices, so the the next context will be scheduled as soon as possible. This might improve interactivity and latency, but will also marginally increase scheduling overhead.&lt;br /&gt;
&lt;br /&gt;
; Persistent Inode Tagging&lt;br /&gt;
: This adds persistent context information to filesystems mounted with the tagxid option. [[Filesystem Tagging|Tagging]] is a requirement for per-context [[Disk Limits and Quota]].&lt;br /&gt;
&lt;br /&gt;
; Tag NFSD User Auth and Files&lt;br /&gt;
: Enable this if you do want the in-kernel NFS Server to use the xid tagging specified above.&lt;br /&gt;
&lt;br /&gt;
; Enable Inode Tag Propagation&lt;br /&gt;
: This allows for the tagid= mount option to specify a tagid which is to be used for the entire mount tree.&lt;br /&gt;
&lt;br /&gt;
; Honor Privacy Aspects of Guests&lt;br /&gt;
: When enabled, most context checks will disallow access to structures assigned to a specific context, like ptys or loop devices.&lt;br /&gt;
&lt;br /&gt;
; VServer Debugging Code&lt;br /&gt;
: Set this to yes if you want to be able to activate debugging output at runtime. It adds a probably small overhead to all vserver related functions and increases the kernel size by about 20k.&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that your kernel is configured, it is time to compile and install it. Exit the configuration and start the compilation process: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# make &amp;amp;&amp;amp; make modules_install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you don't happen to have a really fast box, it is a good time to get a new cup of coffee now ;)&lt;br /&gt;
&lt;br /&gt;
When the kernel has finished compiling, you have to copy the kernel image to your /boot partition and configure your boot loader. If you don't know how to do this, please consult your distribution manual or ask [http://www.google.com Google] for help.&lt;br /&gt;
&lt;br /&gt;
== Manual util-vserver Compilation ==&lt;br /&gt;
&lt;br /&gt;
The kernel alone does not help you, you also need some tools to exploit all those new features you got, so let's get them.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You will have to download the latest util-vserver source tarball from our [[Downloads]] section. In this guide we will use util-vserver-0.30.211.&lt;br /&gt;
&lt;br /&gt;
As a first step, of course, we need to get the sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Go to our source directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&lt;br /&gt;
# Get the sources for util-vserver&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract the sources&lt;br /&gt;
tar xjf util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that we have extracted the util-vserver source we have to do the usual configure, make, make install chain. While configuring the tools you may get some error messages about missing stuff, for example dietlibc, vconfig and e2fs headers. The error messages are accompanied by explanations what you should do, so read them carefully.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Switch to the util-vserver source directory&lt;br /&gt;
cd util-vserver-0.30.211&lt;br /&gt;
&lt;br /&gt;
# Configure the sources (you may want to adjust settings here, the defaults work, but may not suite your needs)&lt;br /&gt;
./configure&lt;br /&gt;
&lt;br /&gt;
# Build the tools&lt;br /&gt;
make&lt;br /&gt;
&lt;br /&gt;
# Install the tools&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
# It's a good point to fix the /proc entries for the guests&lt;br /&gt;
/etc/init.d/vprocunhide restart (this path depends on configuration, see output of 'vserver-info')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing your setup ===&lt;br /&gt;
&lt;br /&gt;
To ensure that your setup works we have created two small test scripts. The testme.sh script ensures basic functionality whereas the testfs.sh script is for inode attribute testing for various filesystems.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testme.sh&lt;br /&gt;
&lt;br /&gt;
# run the test script&lt;br /&gt;
./testme.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Be careful! The testfs.sh script might easily reformat your hard disk :)'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make a loopback file&lt;br /&gt;
dd bs=1024k count=1024 if=/dev/zero of=1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# setup the loopback&lt;br /&gt;
losetup /dev/loop0 1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# run the test script for legacy mode&lt;br /&gt;
./testfs.sh -l -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&lt;br /&gt;
# run the test script for new-style config&lt;br /&gt;
./testfs.sh -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the scripts show any error, be sure to read [[Report a Bug|how to report a bug]] and contact the Linux-VServer Developers for help. See [[Communicate]] for details.&lt;br /&gt;
&lt;br /&gt;
== Where to go from here ==&lt;br /&gt;
&lt;br /&gt;
Now that your setup is complete and working as expected, it is time to create your first guest system. Read on at [[Building Guest Systems]].&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Installation_on_Linux_2.6</id>
		<title>Installation on Linux 2.6</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Installation_on_Linux_2.6"/>
				<updated>2006-11-30T16:05:05Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Compiling and Installing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This guide will explain how to install a Linux-VServer kernel and util-vserver manually from source. It is assumed that you have basic knowledge about building a custom kernel, i.e. that you know which stuff to turn on in the kernel configuration. Of course some Linux-VServer specific options are explained here.&lt;br /&gt;
&lt;br /&gt;
== Manual Kernel Compilation ==&lt;br /&gt;
&lt;br /&gt;
You might ask yourself, why should i build a custom kernel? Manually configuring a kernel is often seen as the most difficult procedure a Linux user ever has to perform. Nothing is less true -- after configuring a couple of kernels you don't even remember that it was difficult ;)&lt;br /&gt;
&lt;br /&gt;
However, one thing is true: you must know your system when you start configuring a kernel manually. Nevertheless there good reasons to build your kernel manually:&lt;br /&gt;
&lt;br /&gt;
* Your distribution does not have a prebuilt Linux-VServer kernel&lt;br /&gt;
* Your distribution does not have the latest and greatest&lt;br /&gt;
* You don't want to install bloated prebuilt kernels&lt;br /&gt;
* You want a monolithic kernel and your distribution uses modules&lt;br /&gt;
* You can tell everyone that you built your kernels manually ;)&lt;br /&gt;
&lt;br /&gt;
If you still intend to built your own kernel, read on. Otherwise have a look at our [[Documentation]] section for how to install a prebuilt Linux-VServer kernel for your distribution.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You'll need the vanilla kernel sources (i.e. those from [http://www.kernel.org kernel.org]) and (of course) a Linux-VServer patch for the kernel version you intend to use. You can find links to both files in our [[Downloads]] section.&lt;br /&gt;
&lt;br /&gt;
In this document we will use Linux 2.6.17.13 with Linux-VServer 2.0.2.1.&lt;br /&gt;
&lt;br /&gt;
First, you have to create a directory for the sources, if you already have one, feel free to skip this step and/or adjust the paths to your needs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Create a directory for our sources&lt;br /&gt;
mkdir ~/src&lt;br /&gt;
&lt;br /&gt;
# Switch to that directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that we have a place to store our sources, we need to fetch them. We start with the vanilla sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get Linux 2.6.17.13 sources&lt;br /&gt;
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.13.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract them&lt;br /&gt;
tar xjf linux-2.6.17.13.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now it is time to get the Linux-VServer patch and apply it to the sources. While we're at it, I tell you a nice trick I learned from Bertl, that allows you to keep a lot source trees on your disk without using up lots of disk space (and this also speeds up 'diff' a lot, which is really nice if you do kernel-hacking). What we do is creating a hard-linked copy of our sources and patch this copy with the Linux-VServer patch. That way, only the patched files use additional disk space (and because hard-linked files are equal by definition, diff doesn't need to compare them).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Get the Linux-VServer 2.0.2.1 patch&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/kernel/vs2.0/patch-2.6.17.13-vs2.0.2.1.diff.bz2&lt;br /&gt;
&lt;br /&gt;
# Create a hard-linked copy of the vanilla sources, this will get the Linux-VServer patch applied&lt;br /&gt;
cp -la linux-2.6.17.13 linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Switch to that new directory&lt;br /&gt;
cd linux-2.6.17.13-vs2.0.2.1&lt;br /&gt;
&lt;br /&gt;
# Patch the sources&lt;br /&gt;
bzcat ../patch-2.6.17.13-vs2.0.2.1.diff.bz2 | patch -p1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you have two sources, the vanilla sources for 2.6.17.13 and the Linux-VServer sources for 2.6.17.13-vs2.0.2.1. You might ask &amp;quot;Why do I need two source trees at all? I only want one kernel!&amp;quot; and that's a good question.&lt;br /&gt;
&lt;br /&gt;
Here's one answer: Updates! If a new vanilla kernel is released, you can just download the patch from your version to the new version. Otherwise, if you would have applied the patch to your one and only vanilla source tree, you would not be able to do this. THe same applies for new Linux-VServer releases. That is, if a new Linux-VServer patch is available, you can simply create another hardlinked copy of your vanilla sources and apply the new patch using the copy. This can really save you time (and bandwith), since you can keep everything you might need, without wasting a lot of disk space.&lt;br /&gt;
&lt;br /&gt;
But be aware that this needs some disciple when hacking the source. Because hard-linked files share the same data on the disk, you need to make sure that your editor does ''The Right Thing'', otherwise you might mess up all your source trees...&lt;br /&gt;
&lt;br /&gt;
=== Configuring the Kernel ===&lt;br /&gt;
&lt;br /&gt;
Now go to your kernel source directory and execute make menuconfig. This will fire up an ncurses-based configuration menu. (Of course you can use whatever configuration method you like, there is a text based one (make config), a GTK based one (make gconfig), and even a QT based one (make xconfig))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Configure the kernel using a ncurses based menu&lt;br /&gt;
make menuconfig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is out of the scope of this guide to explain all the available configuration options. If you feel unsure about certain options either leave it with the default value, or consult your distribution manuals for help.&lt;br /&gt;
&lt;br /&gt;
Nevertheless, we will explain the Linux-VServer configuration options, of course. Depending on your version your configuration options may look similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Linux VServer ---&amp;gt;&lt;br /&gt;
  [*] Enable Legacy Kernel API&lt;br /&gt;
  [ ]   Show a Legacy Version ID&lt;br /&gt;
  [ ] Disable Legacy Networking Kernel API        (2.0.x only)&lt;br /&gt;
  [*] Enable Legacy Networking Kernel API         (2.1.x only)&lt;br /&gt;
  [ ] Remap Source IP Address&lt;br /&gt;
  [*] Enable COW Immutable Link Breaking          (2.1.x only)&lt;br /&gt;
  [*] Enable Virtualized Guest Time               (2.1.x only)&lt;br /&gt;
  [*] Enable Proc Security&lt;br /&gt;
  [*] Enable Hard CPU Limits&lt;br /&gt;
  [*]   Avoid idle CPUs by skipping Time          (2.1.x only)&lt;br /&gt;
  [*]   Limit the IDLE task&lt;br /&gt;
      Persistent Inode Tagging (UID24/GID24)  ---&amp;gt;&lt;br /&gt;
  [ ] Tag NFSD User Auth and Files&lt;br /&gt;
  [ ] Enable Inode Tag Propagation                (2.1.x only)&lt;br /&gt;
  [*] Honor Privacy Aspects of Guests             (2.1.x only)&lt;br /&gt;
  [ ] VServer Debugging Code&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Enable Legacy Kernel API&lt;br /&gt;
: This enables the legacy API used in vs1.xx, maintaining compatibility with older vserver tools, and guest images that are configured using the legacy method.&lt;br /&gt;
&lt;br /&gt;
; Show a Legacy Version ID&lt;br /&gt;
: This shows a special legacy version to very old tools which do not handle the current version correctly. This will probably disable some features of newer tools so better avoid it, unless you really, really need it for backwards compatibility.&lt;br /&gt;
&lt;br /&gt;
; Enable/Disable Legacy Networking Kernel API&lt;br /&gt;
: This enables/disables the legacy networking API which is required by the chbind tool in util-vserver &amp;lt;= 0.30.209. Do not disable it unless you exactly know what you are doing.&lt;br /&gt;
&lt;br /&gt;
; Remap Source IP Address&lt;br /&gt;
: This allows to remap the source IP address of 'local' connections from 127.0.0.1 to the first assigned guest IP.&lt;br /&gt;
&lt;br /&gt;
; Enable COW Immutable Link Breaking&lt;br /&gt;
: This enables the COW (Copy-On-Write) link break code. It allows you to treat [[Unification|unified files]] like normal files when writing to them (which will implicitely break the link and create a copy of the unified file)&lt;br /&gt;
&lt;br /&gt;
; Enable Virtualized Guest Time&lt;br /&gt;
: This enables per guest time offsets to allow for adjusting the system clock individually per guest. This adds some overhead to the time functions and therefore should not be enabled without good reason.&lt;br /&gt;
&lt;br /&gt;
; Enable Proc Security&lt;br /&gt;
: This configures [[Secure ProcFS Entries|ProcFS security]] to initially hide non-process entries for all contexts except the main and spectator context (i.e. for all guests), which is a secure default.&lt;br /&gt;
&lt;br /&gt;
; Enable Hard CPU Limits&lt;br /&gt;
: This will compile in code that allows the [[CPU Scheduler|Token Bucket Scheduler]] to put processes on hold when a context's tokens are depleted (provided that its per-context sched_hard flag is set).&lt;br /&gt;
&lt;br /&gt;
; Avoid idle CPUs by skipping Time&lt;br /&gt;
: This option allows the scheduler to artificially advance time (per cpu) when otherwise the idle task would be scheduled, thus keeping the cpu busy and sharing the available resources among certain contexts.&lt;br /&gt;
&lt;br /&gt;
; Limit the IDLE task&lt;br /&gt;
: Limit the idle slices, so the the next context will be scheduled as soon as possible. This might improve interactivity and latency, but will also marginally increase scheduling overhead.&lt;br /&gt;
&lt;br /&gt;
; Persistent Inode Tagging&lt;br /&gt;
: This adds persistent context information to filesystems mounted with the tagxid option. [[Filesystem Tagging|Tagging]] is a requirement for per-context [[Disk Limits and Quota]].&lt;br /&gt;
&lt;br /&gt;
; Tag NFSD User Auth and Files&lt;br /&gt;
: Enable this if you do want the in-kernel NFS Server to use the xid tagging specified above.&lt;br /&gt;
&lt;br /&gt;
; Enable Inode Tag Propagation&lt;br /&gt;
: This allows for the tagid= mount option to specify a tagid which is to be used for the entire mount tree.&lt;br /&gt;
&lt;br /&gt;
; Honor Privacy Aspects of Guests&lt;br /&gt;
: When enabled, most context checks will disallow access to structures assigned to a specific context, like ptys or loop devices.&lt;br /&gt;
&lt;br /&gt;
; VServer Debugging Code&lt;br /&gt;
: Set this to yes if you want to be able to activate debugging output at runtime. It adds a probably small overhead to all vserver related functions and increases the kernel size by about 20k.&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that your kernel is configured, it is time to compile and install it. Exit the configuration and start the compilation process: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# make &amp;amp;&amp;amp; make modules_install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you don't happen to have a really fast box, it is a good time to get a new cup of coffee now ;)&lt;br /&gt;
&lt;br /&gt;
When the kernel has finished compiling, you have to copy the kernel image to your /boot partition and configure your boot loader. If you don't know how to do this, please consult your distribution manual or ask [http://www.google.com Google] for help.&lt;br /&gt;
&lt;br /&gt;
== Manual util-vserver Compilation ==&lt;br /&gt;
&lt;br /&gt;
The kernel alone does not help you, you also need some tools to exploit all those new features you got, so let's get them.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Sources ===&lt;br /&gt;
&lt;br /&gt;
You will have to download the latest util-vserver source tarball from our [[Downloads]] section. In this guide we will use util-vserver-0.30.211.&lt;br /&gt;
&lt;br /&gt;
As a first step, of course, we need to get the sources.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Go to our source directory&lt;br /&gt;
cd ~/src&lt;br /&gt;
&lt;br /&gt;
# Get the sources for util-vserver&lt;br /&gt;
wget http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&lt;br /&gt;
# Extract the sources&lt;br /&gt;
tar xjf util-vserver-0.30.211.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Compiling and Installing ===&lt;br /&gt;
&lt;br /&gt;
Now that we have extracted the util-vserver source we have to do the usual configure, make, make install chain. While configuring the tools you may get some error messages about missing stuff, for example dietlibc, vconfig and e2fs headers. The error messages are accompanied by explanations what you should do, so read them carefully.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Switch to the util-vserver source directory&lt;br /&gt;
cd util-vserver-0.30.211&lt;br /&gt;
&lt;br /&gt;
# Configure the sources (you may want to adjust settings here, the defaults work, but may not suite your needs)&lt;br /&gt;
./configure&lt;br /&gt;
&lt;br /&gt;
# Build the tools&lt;br /&gt;
make&lt;br /&gt;
&lt;br /&gt;
# Install the tools&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
# It's a good point to fix the /proc entries for the guests&lt;br /&gt;
/etc/init.d/vprocunhide restart (this path depends on configuration, see output of 'vserver-info')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# For redhat based distrib&lt;br /&gt;
chkconfig vprocunhide on&lt;br /&gt;
&lt;br /&gt;
=== Testing your setup ===&lt;br /&gt;
&lt;br /&gt;
To ensure that your setup works we have created two small test scripts. The testme.sh script ensures basic functionality whereas the testfs.sh script is for inode attribute testing for various filesystems.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testme.sh&lt;br /&gt;
&lt;br /&gt;
# run the test script&lt;br /&gt;
./testme.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Be careful! The testfs.sh script might easily reformat your hard disk :)'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# get the script&lt;br /&gt;
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make it executable&lt;br /&gt;
chmod +x testfs.sh&lt;br /&gt;
&lt;br /&gt;
# make a loopback file&lt;br /&gt;
dd bs=1024k count=1024 if=/dev/zero of=1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# setup the loopback&lt;br /&gt;
losetup /dev/loop0 1gb.testfile&lt;br /&gt;
&lt;br /&gt;
# run the test script for legacy mode&lt;br /&gt;
./testfs.sh -l -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&lt;br /&gt;
# run the test script for new-style config&lt;br /&gt;
./testfs.sh -t -D /dev/loop0 -M /mnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the scripts show any error, be sure to read [[Report a Bug|how to report a bug]] and contact the Linux-VServer Developers for help. See [[Communicate]] for details.&lt;br /&gt;
&lt;br /&gt;
== Where to go from here ==&lt;br /&gt;
&lt;br /&gt;
Now that your setup is complete and working as expected, it is time to create your first guest system. Read on at [[Building Guest Systems]].&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Documentation</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Documentation"/>
				<updated>2006-11-24T01:22:42Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Guides and Howtos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;margin: 2em auto 2em auto; padding: 10px; background-color: #F9ECCD; border: 1px solid #004433; text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
[[Image:Icon-Caution.png|left]]&lt;br /&gt;
We are currently migrating to MediaWiki from our old system, but not all content has been migrated yet. Take a look at the [[Wiki Team]] page for instructions how to help or look at the [http://oldwiki.linux-vserver.org old wiki] to find the information not migrated yet.&lt;br /&gt;
&lt;br /&gt;
'''To ease migration we created a [[List of old Documentation pages]].'''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
* [[Overview|Virtualization Overview]]&lt;br /&gt;
* [[Usage Scenarios]]&lt;br /&gt;
&lt;br /&gt;
== Installation and Configuration ==&lt;br /&gt;
&lt;br /&gt;
* [[Installation Considerations]]&lt;br /&gt;
* [[Installation on Linux 2.6]]&lt;br /&gt;
&lt;br /&gt;
* Distribution specific installation&lt;br /&gt;
** [[Installation on ArchLinux]]&lt;br /&gt;
** [[Installation on CentOS]]&lt;br /&gt;
** [[Installation on Debian]]&lt;br /&gt;
** [[Installation on Fedora]]&lt;br /&gt;
** [[Installation on Gentoo]]&lt;br /&gt;
** [[Installation on Mandrake]]&lt;br /&gt;
** [[Installation on Redhat]]&lt;br /&gt;
** [[Installation on Slackware]]&lt;br /&gt;
** [[Installation on SuSE/OpenSUSE]]&lt;br /&gt;
** [[Installation on Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
* Guest creation and setup&lt;br /&gt;
** [[Building Guest Systems]]&lt;br /&gt;
** [[Maintaining Multiple Guest Systems]]&lt;br /&gt;
** [[Guest configuration]]&lt;br /&gt;
&lt;br /&gt;
* Advanced Configuration&lt;br /&gt;
** [[Capabilities and Flags]]&lt;br /&gt;
** [[Context Accounting]]&lt;br /&gt;
** [[CPU Scheduler]]&lt;br /&gt;
** [[Disk Limits and Quota]]&lt;br /&gt;
** [[Resource Limits]]&lt;br /&gt;
** [[Unification]]&lt;br /&gt;
** [[Virtual System Information]]&lt;br /&gt;
&lt;br /&gt;
* Security Considerations&lt;br /&gt;
** [[Secure Capabilities]]&lt;br /&gt;
** [[Secure chroot Barrier]]&lt;br /&gt;
** [[Secure Device Nodes]]&lt;br /&gt;
** [[Secure ProcFS Entries]]&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
== Guides and Howtos ==&lt;br /&gt;
&lt;br /&gt;
* [[HOWTO &amp;quot;virtualize&amp;quot; an existing Linux server]]&lt;br /&gt;
&lt;br /&gt;
== Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
* Seperation and Isolation&lt;br /&gt;
** [[Context Separation]]&lt;br /&gt;
** [[Filesystem Namespaces]]&lt;br /&gt;
** [[Network Separation]]&lt;br /&gt;
** [[ProcFS Security]]&lt;br /&gt;
&lt;br /&gt;
* Performance and Stability&lt;br /&gt;
** [[Virtualization Overhead]]&lt;br /&gt;
&lt;br /&gt;
* Kernel Internals&lt;br /&gt;
** [[Filesystem Attributes]]&lt;br /&gt;
** [[Filesystem Tagging]]&lt;br /&gt;
** [[Kernel Userspace Helper]]&lt;br /&gt;
** [[Linux System Calls]]&lt;br /&gt;
** [[Syscall Command Switch]]&lt;br /&gt;
&lt;br /&gt;
== External Resources ==&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Documentation</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Documentation"/>
				<updated>2006-11-24T01:22:34Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Guides and Howtos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;margin: 2em auto 2em auto; padding: 10px; background-color: #F9ECCD; border: 1px solid #004433; text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
[[Image:Icon-Caution.png|left]]&lt;br /&gt;
We are currently migrating to MediaWiki from our old system, but not all content has been migrated yet. Take a look at the [[Wiki Team]] page for instructions how to help or look at the [http://oldwiki.linux-vserver.org old wiki] to find the information not migrated yet.&lt;br /&gt;
&lt;br /&gt;
'''To ease migration we created a [[List of old Documentation pages]].'''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
* [[Overview|Virtualization Overview]]&lt;br /&gt;
* [[Usage Scenarios]]&lt;br /&gt;
&lt;br /&gt;
== Installation and Configuration ==&lt;br /&gt;
&lt;br /&gt;
* [[Installation Considerations]]&lt;br /&gt;
* [[Installation on Linux 2.6]]&lt;br /&gt;
&lt;br /&gt;
* Distribution specific installation&lt;br /&gt;
** [[Installation on ArchLinux]]&lt;br /&gt;
** [[Installation on CentOS]]&lt;br /&gt;
** [[Installation on Debian]]&lt;br /&gt;
** [[Installation on Fedora]]&lt;br /&gt;
** [[Installation on Gentoo]]&lt;br /&gt;
** [[Installation on Mandrake]]&lt;br /&gt;
** [[Installation on Redhat]]&lt;br /&gt;
** [[Installation on Slackware]]&lt;br /&gt;
** [[Installation on SuSE/OpenSUSE]]&lt;br /&gt;
** [[Installation on Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
* Guest creation and setup&lt;br /&gt;
** [[Building Guest Systems]]&lt;br /&gt;
** [[Maintaining Multiple Guest Systems]]&lt;br /&gt;
** [[Guest configuration]]&lt;br /&gt;
&lt;br /&gt;
* Advanced Configuration&lt;br /&gt;
** [[Capabilities and Flags]]&lt;br /&gt;
** [[Context Accounting]]&lt;br /&gt;
** [[CPU Scheduler]]&lt;br /&gt;
** [[Disk Limits and Quota]]&lt;br /&gt;
** [[Resource Limits]]&lt;br /&gt;
** [[Unification]]&lt;br /&gt;
** [[Virtual System Information]]&lt;br /&gt;
&lt;br /&gt;
* Security Considerations&lt;br /&gt;
** [[Secure Capabilities]]&lt;br /&gt;
** [[Secure chroot Barrier]]&lt;br /&gt;
** [[Secure Device Nodes]]&lt;br /&gt;
** [[Secure ProcFS Entries]]&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
== Guides and Howtos ==&lt;br /&gt;
&lt;br /&gt;
* HOWTO &amp;quot;virtualize&amp;quot; an existing Linux server&lt;br /&gt;
&lt;br /&gt;
== Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
* Seperation and Isolation&lt;br /&gt;
** [[Context Separation]]&lt;br /&gt;
** [[Filesystem Namespaces]]&lt;br /&gt;
** [[Network Separation]]&lt;br /&gt;
** [[ProcFS Security]]&lt;br /&gt;
&lt;br /&gt;
* Performance and Stability&lt;br /&gt;
** [[Virtualization Overhead]]&lt;br /&gt;
&lt;br /&gt;
* Kernel Internals&lt;br /&gt;
** [[Filesystem Attributes]]&lt;br /&gt;
** [[Filesystem Tagging]]&lt;br /&gt;
** [[Kernel Userspace Helper]]&lt;br /&gt;
** [[Linux System Calls]]&lt;br /&gt;
** [[Syscall Command Switch]]&lt;br /&gt;
&lt;br /&gt;
== External Resources ==&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Documentation</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Documentation"/>
				<updated>2006-11-24T01:21:47Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: /* Guides and Howtos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;margin: 2em auto 2em auto; padding: 10px; background-color: #F9ECCD; border: 1px solid #004433; text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
[[Image:Icon-Caution.png|left]]&lt;br /&gt;
We are currently migrating to MediaWiki from our old system, but not all content has been migrated yet. Take a look at the [[Wiki Team]] page for instructions how to help or look at the [http://oldwiki.linux-vserver.org old wiki] to find the information not migrated yet.&lt;br /&gt;
&lt;br /&gt;
'''To ease migration we created a [[List of old Documentation pages]].'''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
* [[Overview|Virtualization Overview]]&lt;br /&gt;
* [[Usage Scenarios]]&lt;br /&gt;
&lt;br /&gt;
== Installation and Configuration ==&lt;br /&gt;
&lt;br /&gt;
* [[Installation Considerations]]&lt;br /&gt;
* [[Installation on Linux 2.6]]&lt;br /&gt;
&lt;br /&gt;
* Distribution specific installation&lt;br /&gt;
** [[Installation on ArchLinux]]&lt;br /&gt;
** [[Installation on CentOS]]&lt;br /&gt;
** [[Installation on Debian]]&lt;br /&gt;
** [[Installation on Fedora]]&lt;br /&gt;
** [[Installation on Gentoo]]&lt;br /&gt;
** [[Installation on Mandrake]]&lt;br /&gt;
** [[Installation on Redhat]]&lt;br /&gt;
** [[Installation on Slackware]]&lt;br /&gt;
** [[Installation on SuSE/OpenSUSE]]&lt;br /&gt;
** [[Installation on Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
* Guest creation and setup&lt;br /&gt;
** [[Building Guest Systems]]&lt;br /&gt;
** [[Maintaining Multiple Guest Systems]]&lt;br /&gt;
** [[Guest configuration]]&lt;br /&gt;
&lt;br /&gt;
* Advanced Configuration&lt;br /&gt;
** [[Capabilities and Flags]]&lt;br /&gt;
** [[Context Accounting]]&lt;br /&gt;
** [[CPU Scheduler]]&lt;br /&gt;
** [[Disk Limits and Quota]]&lt;br /&gt;
** [[Resource Limits]]&lt;br /&gt;
** [[Unification]]&lt;br /&gt;
** [[Virtual System Information]]&lt;br /&gt;
&lt;br /&gt;
* Security Considerations&lt;br /&gt;
** [[Secure Capabilities]]&lt;br /&gt;
** [[Secure chroot Barrier]]&lt;br /&gt;
** [[Secure Device Nodes]]&lt;br /&gt;
** [[Secure ProcFS Entries]]&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
== Guides and Howtos ==&lt;br /&gt;
&lt;br /&gt;
*[http://www.telephreak.org/papers/vpa/ VOIP with vserver]&lt;br /&gt;
&lt;br /&gt;
== Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
* Seperation and Isolation&lt;br /&gt;
** [[Context Separation]]&lt;br /&gt;
** [[Filesystem Namespaces]]&lt;br /&gt;
** [[Network Separation]]&lt;br /&gt;
** [[ProcFS Security]]&lt;br /&gt;
&lt;br /&gt;
* Performance and Stability&lt;br /&gt;
** [[Virtualization Overhead]]&lt;br /&gt;
&lt;br /&gt;
* Kernel Internals&lt;br /&gt;
** [[Filesystem Attributes]]&lt;br /&gt;
** [[Filesystem Tagging]]&lt;br /&gt;
** [[Kernel Userspace Helper]]&lt;br /&gt;
** [[Linux System Calls]]&lt;br /&gt;
** [[Syscall Command Switch]]&lt;br /&gt;
&lt;br /&gt;
== External Resources ==&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	<entry>
		<id>http://linux-vserver.at/Documentation</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="http://linux-vserver.at/Documentation"/>
				<updated>2006-11-24T00:48:47Z</updated>
		
		<summary type="html">&lt;p&gt;Adrien: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;margin: 2em auto 2em auto; padding: 10px; background-color: #F9ECCD; border: 1px solid #004433; text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
[[Image:Icon-Caution.png|left]]&lt;br /&gt;
We are currently migrating to MediaWiki from our old system, but not all content has been migrated yet. Take a look at the [[Wiki Team]] page for instructions how to help or look at the [http://oldwiki.linux-vserver.org old wiki] to find the information not migrated yet.&lt;br /&gt;
&lt;br /&gt;
'''To ease migration we created a [[List of old Documentation pages]].'''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
* [[Overview|Virtualization Overview]]&lt;br /&gt;
* [[Usage Scenarios]]&lt;br /&gt;
&lt;br /&gt;
== Installation and Configuration ==&lt;br /&gt;
&lt;br /&gt;
* [[Installation Considerations]]&lt;br /&gt;
* [[Installation on Linux 2.6]]&lt;br /&gt;
&lt;br /&gt;
* Distribution specific installation&lt;br /&gt;
** [[Installation on ArchLinux]]&lt;br /&gt;
** [[Installation on CentOS]]&lt;br /&gt;
** [[Installation on Debian]]&lt;br /&gt;
** [[Installation on Fedora]]&lt;br /&gt;
** [[Installation on Gentoo]]&lt;br /&gt;
** [[Installation on Mandrake]]&lt;br /&gt;
** [[Installation on Redhat]]&lt;br /&gt;
** [[Installation on Slackware]]&lt;br /&gt;
** [[Installation on SuSE/OpenSUSE]]&lt;br /&gt;
** [[Installation on Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
* Guest creation and setup&lt;br /&gt;
** [[Building Guest Systems]]&lt;br /&gt;
** [[Maintaining Multiple Guest Systems]]&lt;br /&gt;
** [[Guest configuration]]&lt;br /&gt;
&lt;br /&gt;
* Advanced Configuration&lt;br /&gt;
** [[Capabilities and Flags]]&lt;br /&gt;
** [[Context Accounting]]&lt;br /&gt;
** [[CPU Scheduler]]&lt;br /&gt;
** [[Disk Limits and Quota]]&lt;br /&gt;
** [[Resource Limits]]&lt;br /&gt;
** [[Unification]]&lt;br /&gt;
** [[Virtual System Information]]&lt;br /&gt;
&lt;br /&gt;
* Security Considerations&lt;br /&gt;
** [[Secure Capabilities]]&lt;br /&gt;
** [[Secure chroot Barrier]]&lt;br /&gt;
** [[Secure Device Nodes]]&lt;br /&gt;
** [[Secure ProcFS Entries]]&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
== Guides and Howtos ==&lt;br /&gt;
&lt;br /&gt;
== Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
* Seperation and Isolation&lt;br /&gt;
** [[Context Separation]]&lt;br /&gt;
** [[Filesystem Namespaces]]&lt;br /&gt;
** [[Network Separation]]&lt;br /&gt;
** [[ProcFS Security]]&lt;br /&gt;
&lt;br /&gt;
* Performance and Stability&lt;br /&gt;
** [[Virtualization Overhead]]&lt;br /&gt;
&lt;br /&gt;
* Kernel Internals&lt;br /&gt;
** [[Filesystem Attributes]]&lt;br /&gt;
** [[Filesystem Tagging]]&lt;br /&gt;
** [[Kernel Userspace Helper]]&lt;br /&gt;
** [[Linux System Calls]]&lt;br /&gt;
** [[Syscall Command Switch]]&lt;br /&gt;
&lt;br /&gt;
== External Resources ==&lt;/div&gt;</summary>
		<author><name>Adrien</name></author>	</entry>

	</feed>