Linux Vserver · 7 min read · Feb 09, 2026
Linux-Vserver sur Debian Sarge
Résumé
Vous pouvez trouver une version plus facile à lire de ce howto sur 5dollarwhitebox.org.
Cité de 13thfloor.at/vserver/project :
Linux-VServer vous permet de créer des serveurs privés virtuels et des contextes de sécurité qui fonctionnent comme un serveur Linux normal, mais permettent à de nombreux serveurs indépendants de fonctionner simultanément dans une seule machine à pleine vitesse. Tous les services, tels que ssh, mail, Web et bases de données, peuvent être démarrés sur un tel VPS, sans modification, tout comme sur n’importe quel vrai serveur. Chaque serveur virtuel a sa propre base de données de comptes utilisateurs et mot de passe root et n’interfère pas avec d’autres serveurs virtuels.
Vous pouvez trouver une présentation sur Linux-vserver à http://www.linux-vserver.org.
Les deux principaux termes à connaître sont :
- Système hôte : C’est le serveur physique qui “héberge” les systèmes d’exploitation invités (serveurs virtuels).
- Système invité : Ce sont les serveurs virtuels qui fonctionnent au-dessus du système d’exploitation hôte.
Préparation
Commencez par une installation fraîche de Debian Sarge 3.1. Il est recommandé de garder le système hôte aussi minimal que possible (je ne vois que rarement une raison de faire fonctionner plus que SSH et iptables).
Paquets à installer
Mettez toujours à jour votre base de données apt avant d’installer des logiciels et mettez à niveau les paquets actuels :
# apt-get update && apt-get upgrade
Ensuite, nous devons installer quelques paquets de base :
- util-vserver : Utilitaires en espace utilisateur pour contrôler les serveurs virtuels
- ssh : Cela aurait probablement déjà dû être installé
- ncurses-base, et libncurses5-dev : Nécessaires pour “make menuconfig” lors de la compilation du noyau.
# apt-get install util-vserver ssh ncurses-base libncurses5-dev
Les Fichiers
| /var/lib/vservers | Répertoire personnel pour les fichiers vservers |
| /etc/vservers.conf | fichier de configuration de base (pas grand-chose à voir là) |
| /etc/vservers | Contient les répertoires de configuration pour chaque serveur virtuel |
| /usr/sbin/vserver | Utilitaire pour interagir, construire, démarrer, arrêter, entrer, etc. les vservers |
| /bin/vshelper | Un autre utilitaire pour contrôler le fonctionnement des vservers |
| /usr/lib/util-vserver | Scripts/fonctions/etc principaux |
Le Noyau
Veuillez noter que je n’ai pas fait cette section “à la manière Debian”. Tout a été fait en utilisant un noyau Vanilla de kernel.org. Vous pouvez trouver de bons liens dans les commentaires des utilisateurs ci-dessous pour d’autres ressources. Obtenez le dernier noyau, actuellement la dernière version stable de linux-vserver est pour le noyau 2.6.12.4.. ce qui est ce que nous obtenons :
# cd /usr/src
Obtenez le dernier patch du noyau depuis linux-vserver.org ou 13thfloor.at/vserver :
# wget http://www.13thfloor.at/vserver/s_rel26/v2.0/patch-2.6.12.4-vs2.0.diff.gz
Si vous exécutez déjà un noyau 2.6.x similaire, vous pouvez copier votre configuration actuelle avant de construire. Elle devrait être quelque part comme “/boot/config-2.6.x”
# cp /boot/config-2.6.X /usr/src/linux-2.6.12.4/.config
Cette dernière commande est seulement si vous souhaitez utiliser une configuration existante… s’il vous plaît, n’essayez pas d’utiliser un fichier de configuration 2.4.X… s’il vous plaît.
Ok, faisons cela. Il y a quelques éléments que vous souhaitez inclure lors de la compilation. D’abord les choses d’abord, vous devez avoir une compilation fonctionnelle pour votre système… et cela, je ne peux pas vous aider. Veuillez vous référer au lien si vous avez besoin d’aide pour compiler un noyau.
# make menuconfig
Pour un usage futur, vous devriez probablement inclure LVM (et le support de dev-mapper)… car c’est pratique pour les serveurs virtuels.
Vous voyez une catégorie pour “Linux Vserver”. Les sélections par défaut devraient être correctes, cependant vous devriez avoir quelque chose comme les éléments suivants sélectionnés :
Activer l’API du noyau hérité
Activer la sécurité Proc
Activer les limites de CPU strictes
Cool… maintenant nous avons notre configuration…. faisons le noyau :
# make
Ensuite, nous voudrons mettre à jour notre configuration grub :
En utilisant la commande ‘vi’, éditez /boot/grub/menu.lst et ajoutez les lignes suivantes AVANT les autres entrées déjà présentes… et assurez-vous que la ligne “default” est définie sur “0” : title Vanilla 2.6.12.4-vs2.0
root (hd0,0)
kernel /vmlinuz-2.6.12.4-vs2.0 root=/dev/hda2 ro
initrd /initrd.img-2.6.12.4-vs2.0
savedefault
boot
Et voilà. Maintenant, nous devrions être en mesure de redémarrer et d’avoir notre nouveau noyau prêt pour quelques serveurs virtuels.
# reboot
Vérifiez ce noyau après le démarrage pour vous assurer que nous fonctionnons sur le nouveau :
# uname -r
2.6.12.4-vs2.0
Sympa !
Configuration des Serveurs Virtuels
Créer des serveurs Debian virtuels sur un hôte Debian est presque ridiculement simple. Ce qui suit vous l’explique :
# vserver
-n
–hostname
–interface
-m debootstrap – -d
Donc, notre premier serveur virtuel aura les informations suivantes :
| VSERVER_NAME | vserver1 |
| FQDN | vserver1.mydomain.com |
| NET_DEVICE | eth0 |
| IP | 192.168.1.10 |
| CIDR | 24 (255.255.255.0) |
| DEBIAN_DISTRO | sarge |
Par conséquent, la commande suivante le créera :
# vserver vserver1 build \
-n vserver1 \
–hostname vserver1.mydomain.com \
–interface eth0:192.168.1.10/24 \
-m debootstrap – -d sarge
Les barres obliques ‘\’ signifient une nouvelle ligne… cependant, vous pouvez exécuter tout cela comme une seule commande sans utiliser de barres obliques.
Et voilà… l’installation commence une installation réseau debian de la distribution sélectionnée. Cela ne devrait pas prendre plus de quelques minutes. Sur mon système, l’installation de base ne prend que 144 Mo. Maintenant voyons ce que nous avons :
# ls -lah /var/lib/vservers/vserver1
total 80K
drwxr-xr-x 20 root root 4.0K Nov 10 08:17 .
drwxr-xr-x 4 root root 4.0K Nov 10 08:13 ..
drwxr-xr-x 2 root root 4.0K Nov 10 08:17 bin
drwxr-xr-x 2 root root 4.0K Dec 15 2004 boot
drwxr-xr-x 3 root root 4.0K Nov 10 08:13 dev
drwxr-xr-x 37 root root 4.0K Nov 10 08:17 etc
drwxrwsr-x 2 root staff 4.0K Dec 15 2004 home
drwxr-xr-x 2 root root 4.0K Nov 10 08:16 initrd
drwxr-xr-x 7 root root 4.0K Nov 10 08:17 lib
drwxr-xr-x 2 root root 4.0K Nov 10 08:16 media
drwxr-xr-x 2 root root 4.0K Dec 15 2004 mnt
drwxr-xr-x 2 root root 4.0K Nov 10 08:16 opt
drwxr-xr-x 2 root root 4.0K Dec 15 2004 proc
drwxr-xr-x 2 root root 4.0K Nov 10 08:16 root
drwxr-xr-x 2 root root 4.0K Nov 10 08:17 sbin
drwxr-xr-x 2 root root 4.0K Nov 10 08:16 srv
drwxr-xr-x 2 root root 4.0K May 10 2005 sys
drwxrwxrwt 2 root root 4.0K Nov 10 08:17 tmp
drwxr-xr-x 11 root root 4.0K Nov 10 08:16 usr
drwxr-xr-x 13 root root 4.0K Nov 10 08:16 var # ls -lah /etc/vservers/vserver1
total 28K
drwxr-xr-x 5 root root 4.0K Nov 10 08:13 .
drwxr-xr-x 6 root root 4.0K Nov 10 08:13 ..
drwxr-xr-x 4 root root 4.0K Nov 10 08:13 apps
-rw-r–r– 1 root root 112 Nov 10 08:13 fstab
drwxr-xr-x 3 root root 4.0K Nov 10 08:13 interfaces
-rw-r–r– 1 root root 5 Nov 10 08:13 name
lrwxrwxrwx 1 root root 22 Nov 10 08:13 run -> /var/run/vservers/vserver1
drwxr-xr-x 2 root root 4.0K Nov 10 08:13 uts
lrwxrwxrwx 1 root root 37 Nov 10 08:13 vdir -> /etc/vservers/.defaults/vdirbase/vserver1
Maintenant que nous avons notre vserver installé, démarrons-le. La syntaxe pour la commande ‘vserver’ est :
# vserver
Et pour notre vserver1 :
# vserver vserver1 start Démarrage du démon de journal système : syslogd.
Démarrage du démon de journal du noyau : klogd.
Démarrage de MTA : exim4.
Démarrage du super serveur internet : inetd.
Démarrage du planificateur d’exécution différée : atd.
Démarrage du planificateur de commandes périodiques : cron.
… # vserver-stat
CTX PROC VSZ RSS userTIME sysTIME UPTIME NAME
0 35 73.4M 5.4K 0m05s21 0m02s33 1m13s00 root server
49152 5 11M 967 0m00s00 0m00s00 0m30s52 vserver1
vserver1:/#
Et vous êtes maintenant dans le contexte du serveur virtuel. Pour sortir et revenir au système hôte, tapez simplement “exit”.
Remarques sur la Configuration
Vous devrez d’abord exécuter “apt-setup” et configurer apt comme tout autre système debian. L’installation de bootstrap debian est une installation de base très minimale. Vous devrez installer tout ce que vous voulez.
Il convient de mentionner que chaque serveur virtuel a sa propre adresse IP. Cependant, puisque ces IP sont configurées comme des alias pour votre véritable périphérique réseau (c’est-à-dire eth0), elles écoutent toutes sur le même périphérique physique. Cela peut poser un problème lorsque les configurations par défaut spécifient d’”écouter” sur toutes les interfaces. Chaque service au sein du vserver doit spécifier une adresse d’écoute.
Par exemple :
SSH :
# apt-get install sshd
Changez la ligne :
#ListenAddress 0.0.0.0
À
ListenAddress 192.168.1.10
Et…
# /etc/init.d/ssh restart
Le reste dépend vraiment de votre imagination et de la découverte des merveilles de l’open source non documenté… amusez-vous !
BJ Dierkes, RHCE-LPIC1
wdierkes [at] 5dollarwhitebox [dot] org
Texas, USA
Ressources
- Le projet Linux-vserver
- http://www.13thfloor.at/vserver/project
- Debian GNU Linux
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.