Difference between revisions of "Installation on Debian"

From Linux-VServer

Jump to: navigation, search
(Virtual machine creation)
(die newvserver, die. other small fixes too)
Line 7: Line 7:
 
* '''linux-image-vserver-686''' - This is the actual kernel
 
* '''linux-image-vserver-686''' - This is the actual kernel
 
* '''util-vserver''' - These are the utilities used to administer the guests
 
* '''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
 
* '''ssh''' - This is probably already installed, but just in case it isn't
  
 
All the packages you need can be obtained via
 
All the packages you need can be obtained via
<pre>apt-get install linux-image-vserver-686 util-vserver vserver-debiantools ssh</pre>
+
<pre>apt-get install linux-image-vserver-686 util-vserver ssh</pre>
 
so run this as ''root'' and reboot.
 
so run this as ''root'' and reboot.
 
To check out wherever everything went fine you may run
 
To check out wherever everything went fine you may run
Line 18: Line 17:
 
Now let's create a virtual machine.
 
Now let's create a virtual machine.
  
== Virtual machine creation ==
+
== Guest system creation ==
On a Debian system, creation of guests is done via the <tt>newvserver</tt> command. The syntax for this command is:<br />
+
To build guests, you use <tt>vserver [name] build</tt>. The syntax for this command is:<br />
''(note: <tt>newvserver</tt> is deprecated and should not be used. please use <tt>vserver <name> build ...</tt> instead *Bertl*)''
+
vserver [name] build -m debootstrap --hostname [hostname] \
newvserver --vsroot /var/lib/vservers/ --hostname [Hostname] \
+
  --interface [interface]:[IP address]/[CIDR prefix or netmask] \
  --domain [Domain] --ip [IP Address]/[CIDR Range] \
+
  -- -d [dist] -m [Debian mirror]
  --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 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.
 
Also, the -- separate the different parts of the command. First are generic vserver ... build options, the second part are options specific to the chosen method (debootstrap), the third part are options which will be passed directly to debootstrap.)''
 
Also, the -- separate the different parts of the command. First are generic vserver ... build options, the second part are options specific to the chosen method (debootstrap), the third part are options which will be passed directly to debootstrap.)''
  
 
The command line arguments are:
 
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.
+
* '''name''' - The name of the guest
* '''Hostname''' - The hostname of the system (eg. test1)  
+
* '''hostname''' - The hostname of the guest (eg. test1.domain.tld)  
* '''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.)  
+
* '''interface''' - Your network interface, if it's not eth0 (eg. eth1).
* '''IP Address'''- The IP address for the guest system (eg. 10.1.1.7)
+
* '''IP address'''- The IP address for the guest (eg. 10.1.1.7)
* '''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 :)
+
* '''CIDR prefix or netmask''' - The CIDR prefix 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, use /32.
* '''Dist''' - The distribution to use. For the purposes of this exercise, we use etch.
+
* '''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 ftp://ftp.debian.org/debian)  
+
* '''Debian mirror''' - The Debian mirror you use (when in doubt, choose ftp://ftp.debian.org/debian)  
* '''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:
 
So, let's make a test server. The settings for our test guest are like so:
* '''Hostname:''' test1
+
* '''Hostname:''' test1.example.com
* '''Domain:''' example.com
+
* '''IP address:''' 10.1.1.7
* '''IP Address:''' 10.1.1.7
+
* '''CIDR prefix:''' /8
* '''CIDR Range:''' /8
+
* '''Debian mirror:''' http://ftp.au.debian.org/debian/
* '''Debian Mirror:''' http://ftp.au.debian.org/debian/
+
 
* '''Interface:''' eth1
 
* '''Interface:''' eth1
  
Line 55: Line 51:
 
In particular, --rootdir gives the desired location of the vserver.
 
In particular, --rootdir gives the desired location of the vserver.
  
newvserver --vsroot /var/lib/vservers/ --hostname test1 --domain example.com \
+
== Guest system operation ==
--ip 10.1.1.7/8 --dist etch --mirror http://ftp.au.debian.org/debian/ --interface eth1
+
To start guest just created, run
''(note: <tt>newvserver</tt> is deprecated and should not be used. please use <tt>vserver <name> build ...</tt> instead *Bertl*)''
+
 
+
== Virtual machine operation ==
+
To start VM just created, run
+
 
<pre>vserver test1 start</pre>
 
<pre>vserver test1 start</pre>
 
To get into it, type
 
To get into it, type
 
<pre>vserver test1 enter</pre>
 
<pre>vserver test1 enter</pre>
Again, study man for more information.
+
Again, study --help for more information.
  
  
 
== References ==
 
== References ==
 
* Linux-VServer HOWTO by Daniel15: http://howtoforge.com/linux_vserver_debian_etch
 
* Linux-VServer HOWTO by Daniel15: http://howtoforge.com/linux_vserver_debian_etch

Revision as of 21:01, 13 October 2007

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

Contents

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
  • 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 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.

Guest system creation

To build guests, you use vserver [name] build. The syntax for this command is:

vserver [name] build -m debootstrap --hostname [hostname] \
--interface [interface]:[IP address]/[CIDR prefix or netmask] \
-- -d [dist] -m [Debian mirror]

(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. Also, the -- separate the different parts of the command. First are generic vserver ... build options, the second part are options specific to the chosen method (debootstrap), the third part are options which will be passed directly to debootstrap.)

The command line arguments are:

  • name - The name of the guest
  • hostname - The hostname of the guest (eg. test1.domain.tld)
  • interface - Your network interface, if it's not eth0 (eg. eth1).
  • IP address- The IP address for the guest (eg. 10.1.1.7)
  • CIDR prefix or netmask - The CIDR prefix 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, use /32.
  • 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 ftp://ftp.debian.org/debian)

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

vserver test1 build -m debootstrap --hostname test1.example.com \
--interface eth1:10.1.1.7/8 -- -d etch -m ftp://ftp.au.debian.org/debian/ \
-- --resolve-deps --arch i386

For all options to vserver build, see

vserver - build --help

In particular, --rootdir gives the desired location of the vserver.

Guest system operation

To start guest just created, run

vserver test1 start

To get into it, type

vserver test1 enter

Again, study --help for more information.


References

Personal tools