Comme vous le savez sans doute si vous n’êtes pas tombé sur cet article par hasard, avec cette dernière version de Debian, Linux-VServer devient obsolète. Cela signifie qu’il va bientôt falloir migrer vers une autre solution de virtualisation (KVM, Linux Container ou Xen). Cependant, vous avez peut-être besoin de poursuivre avec Linux-VServer quelque temps sans pour autant vous priver de la dernière version stable de Debian.
Si vous êtes conscients que le projet Debian arrête le suivi en sécurité de Linux-VServer et qu’il n’y aura plus de support de ce composant, suivez le guide. Sinon, je vous invite à passer à LXC.
Notes :
- Je pars du principe que vous avez déjà installé Debian Wheezy
- Si une partie d’une ligne de commande est surlignée comme ceci, cela signifie qu’elle peut ou doit être adaptée avec vos paramètres ou préférences
- Ce guide est conçu pour que dans la plupart des cas, vous puissiez vous contenter de faire des copier / coller
Dans le fichier /etc/apt/sources.list, on commente la ligne relative au cd-rom :
sed -i "s/^\(deb cdrom.*\)/#\1$/g" /etc/apt/sources.list
On met à jour le système :
apt-get update apt-get upgrade
On installe les outils de base et ceux qui seront nécessaires à la compilation :
apt-get install \ wget \ build-essential \ kernel-package \ initramfs-tools \ module-init-tools \ libncurses5-dev \ e2fslibs-dev \ dietlibc-dev \ pkg-config \ vlan \ libnss3 \ libnss3-dev \ debootstrap
On récupère la dernière version du patch Linux-VServer depuis le site http://vserver.13thfloor.at/Experimental/ :
wget -P /usr/src http://vserver.13thfloor.at/Experimental/patch-3.9.5-vs2.3.6.5.diff
On récupère le kernel correspondant depuis le site https://www.kernel.org/pub/linux/kernel/ ou https://www.kernel.org/ :
wget -P /usr/src https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.9.5.tar.gz
On se place dans /etc/src et on décompresse le kernel :
cd /usr/src
tar xvfz linux-3.9.5.tar.gz
On créé le lien symbolique /usr/src/linux qui pointe vers les sources du noyau :
ln -s linux-3.9.5 linux
On récupère la configuration du noyau actuellement en service puis on la copie dans celle du nouveau noyau :
cp /boot/config-3.2.0-4-686-pae /usr/src/linux/.config
Il est également possible de récupérer cette configuration dans le système de fichier procfs, si l’optionKernel .config support du noyau était activée pour le noyau en service :
zcat /proc/config.gz > /usr/src/linux/.config
ou encore dans le répertoire kernel du noyau actuellement en service :
cp /usr/src/linux-3.9.5/.config /usr/src/linux/
On se place dans /usr/src/linux et on applique le patch :
cd /usr/src/linux
patch -p1 < ../patch-3.9.5-vs2.3.6.5.diff
On lance menuconfig :
make menuconfig
et on active les options suivantes :
- « Enable loadable module support »
- « Linux VServer »
- « Automatically Assign Loopback IP »
- « Enable COW Immutable Link Breaking »
- « Enable Proc Security »
- « VServer Warnings »
- « VServer DevPTS Warnings »
Pensez à enregistrer vos modifications avant de quitter menuconfig : < Save >
On efface tous les fichiers créés dans le répertoire des sources du noyau par la cible build :
make-kpkg clean
On lance la compilation du kernel (l’argument « 4 » de l’option « --jobs » est à adapter en fonction du nombre de threads que peut exécuter votre machine simultanément) :
make-kpkg --initrd --append-to-version vserver --revision 1 kernel-image --jobs 4
Si la compilation s’est bien déroulée, un paquet .deb a été créé dans /usr/src.
On installe le nouveau kernel :
dpkg -i /usr/src/linux-image-3.9.5-vs2.3.6.5vserver_1_amd64.deb
Si vous êtes sur une machine distante à laquelle vous n’avez pas d’accès physique, je vous recommande très fortement de prendre la précaution détaillée dans mon article précédent avant de redémarrer la machine : https://blog.blaisethirard.com/grub-precaution-a-prendre-apres-la-compilation-d-un-nouveau-kernel-sur-un-serveur-distant/
On redémarre la machine :
reboot
Une fois la machine redémarrée, on vérifie que le noyau utilisé est bien celui que nous venons d’installer :
uname -r
Maintenant que nous sommes sur le noyau patché, il ne nous reste plus qu’à installer util-vserver. Pour cela, on télécharge la dernière version à cette adresse : http://people.linux-vserver.org/~dhozac/t/uv-testing :
wget -P /usr/src http://people.linux-vserver.org/~dhozac/t/uv-testing/util-vserver-0.30.216-pre3038.tar.bz2
On se place dans /etc/src et on décompresse l’archive :
cd /usr/src
tar jxvf util-vserver-0.30.216-pre3038.tar.bz2
On se place dans /etc/src/util-vserver-0.30.216-pre3038/ et on lance le script de configuration :
cd util-vserver-0.30.216-pre3038/
./configure --prefix=/usr --enable-release --mandir=/usr/share/man --infodir=/usr/share/info --sysconfdir=/etc --enable-dietlibc --localstatedir=/var --with-vrootdir=/home/srv
On compile util-vserver :
make make install make install-distribution
Le script vshelper est utilisé pour arrêter et redémarrer correctement les serveurs virtuels. Nous allons donc indiquer au noyau où il se trouve :
echo /usr/lib/util-vserver/vshelper >| /proc/sys/kernel/vshelper echo kernel.vshelper = /usr/lib/util-vserver/vshelper >> /etc/sysctl.conf
On démarre util-vserver :
service util-vserver start
Pour finir, on configure le démarrage automatique des services :
update-rc.d vprocunhide defaults update-rc.d util-vserver defaults update-rc.d vservers-default defaults
Linux-VServer est à présent installé et fonctionnel sur votre Debian Wheezy !
souhaitant adopté Wheezy 7.4 pour délaisser Squeeze Debian ,qui me satisfait totalement mais ne pouvant supprimer un compte “guest” qui me bloque dans toutes mes actions, je choisis de réinstaller ex nihilo Ubuntu version nouvelle après les mesures de sécurité préalables que je n’avais pas effectuées à l’origine de mon désagrément, ainsi qu’un nettoyage complet de mon système.
Qu’en pensez-vous?
Avant une éventuelle réponse de votre part ,par je vous précise que mon compte mail est juste authentifié et que je n’ai pas de connexion sécurisée SSH-2 et OpenGnuPG.