Installation on Debian

From Linux-VServer

Revision as of 17:10, 18 July 2007 by Bertl (Talk | contribs)

Jump to: navigation, search

This guide is written against Debian Etch (4.0). This release includes kernel linux-image-vserver-686, so no manual patching is needed. Hence, Installation on Debian Etch is pretty easy and straightforward.

If you need to compile your own kernel, you need to apply the vserver-version.patch. Details at 2007/Apr/25


Packages installation

The packages required by Linux-VServer are:

  • linux-image-vserver-686 - This is the actual kernel
  • util-vserver - These are the utilities used to administer the guests
  • vserver-debiantools - These are special Vserver tools for Debian, used to create and duplicate Debian guest systems.
  • ssh - This is probably already installed, but just in case it isn't

All the packages you need can be obtained via

apt-get install linux-image-vserver-686 util-vserver vserver-debiantools ssh

so run this as root and reboot. To check out wherever everything went fine you may run

uname -r

and check that kernel version is something like 2.6.18-4-vserver-686. That's it. Now let's create a virtual machine.

Virtual machine creation

On a Debian system, creation of guests is done via the newvserver command. The syntax for this command is:
(note: newvserver is deprecated and should not be used. please use vserver <name> build ... instead *Bertl*)

newvserver --vsroot /var/lib/vservers/ --hostname [Hostname] \
--domain [Domain] --ip [IP Address]/[CIDR Range] \
--dist etch --mirror [Debian Mirror] --interface [Net Interface]

(the backslashes at the end of the lines mean that it continues onto the next line. You may copy it as-is [with the backslashes], or put the whole command on one line [and exclude the backslashes], as is done below)

The command line arguments are:

  • vsroot - This is where the files for the guests are kept. On a default installation, this will be at /var/lib/vservers. Alternatively, some people create a separate partition for their vservers.
  • Hostname - The hostname of the system (eg. test1)
  • Domain - The domain of the system. This is usually the same as the domain you chose for the host system (eg. dan-network.local. This doesn't need to be real, it's only used internally.)
  • IP Address- The IP address for the guest system (eg.
  • CIDR Range - The CIDR Range for your local network. For a 10.x.x.x network, this is usually /8. For a 172.16.x.x network, this is usually /16. For a 192.168.x.x network, this is usually /24. If your network is subnetted, this will be different. When in doubt, choose /8 :)
  • Dist - The distribution to use. For the purposes of this exercise, we use etch.
  • Debian Mirror - The Debian mirror you use (when in doubt, choose
  • Interface - Your network interface, if it's not eth0 (eg. eth1).

So, let's make a test server. The settings for our test guest are like so:

vserver test1 build -m debootstrap --hostname \
--interface eth1: -- -d etch -m \
-- --resolve-deps --arch i386
newvserver --vsroot /var/lib/vservers/ --hostname test1 --domain \
--ip --dist etch --mirror --interface eth1

(note: newvserver is deprecated and should not be used. please use vserver <name> build ... instead *Bertl*)

Virtual machine operation

To start VM just created, run

vserver test1 start

To get into it, type

vserver test1 enter

Again, study man for more information.


Personal tools