Outils pour utilisateurs

Outils du site


israd:debuml

Compilation d'un noyau "à la mode" Debian

Voici un petit résumé de ce qu'il faut faire pour créer un paquet debian du noyau 2.6.8 modifié skas et vserver.

Installer le paquet source et les patchs voulus, décompresser les sources du noyau

 
apt-get install kernel-source-2.6.8 kernel-patch-skas kernel-patch-vserver libncurses5-dev initrd-tools
cd /usr/src ; tar xjf kernel-source-2.6.8.tar.bz2 ; cd kernel-source-2.6.8

Compilation du noyau et création du paquet

make-kpkg --rootcmd fakeroot --revision 1 --append-to-version -skas-vserver --added-patches skas,vserver --config menuconfig --initrd binary

l'option –initrd est nécessaire pour que le paquet debian crée automatiquement le ficher initrd qui sera nécessaire au noyau pour charger les modules nécessaires pour monter la racine.

FIXME: à complèter, description des options. En attendant : man make-kpkg

Les options de configuration importantes pour la suite :

CONFIG_PROC_MM=y
CONFIG_BLK_DEV_VROOT=m
CONFIG_VSERVER=y
CONFIG_VSERVER_SECURITY=y
CONFIG_VSERVER_LEGACY=y
CONFIG_VSERVER_LEGACYNET=y
CONFIG_VSERVER_PROC_SECURE=y
CONFIG_VSERVER_HARDCPU=y

Installation du noyau généré avec

dpkg -i kernel-image-2.6.8-skas-vserver_1_i386.deb

Mais vous pouvez recuperer et installer un noyau déjà généré ici

User Mode Linux

Création d'un noyau UML

Récupèrer un noyau 2.6.12 sur http://www.kernel.org

wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.12.tar.gz

Le “détarrer”, en faire un paquet debian :

make-kpkg --arch um --revision 1 --config menuconfig --rootcmd fakeroot --append-to-version=-uml  kernel-image

Le résultat sans avoir changé d'option de configuration (menuconfig) : kernel-uml-2.6.12-uml_1_i386.deb à installer avec :

dpkg -i kernel-uml-2.6.12-uml_1_i386.deb

Installer différents utilitaires dont uml_net et uml_mconsole qui nous serviront :

apt-get install uml-utilities

Pour que le noyau uml trouve bien uml-net :

ln -s /usr/lib/uml/uml_net /usr/bin/

Installation de rootstrap

le paquet rootstrap n'existe qu'en sid et dépend de user-mode-linux. Le noyau uml que l'on a installé est en conflit avec user-mode-linux. Il faut donc refaire le paquet rootstrap en retirant cette dépendance.

/etc/apt/sources.list :

deb http://ftp.u-picardie.fr/pub/debian/ sarge main
deb-src http://ftp.u-picardie.fr/pub/debian/ sid main

N'oubliez pas !!!

 apt-get update

Pour que les changements soient pris en compte…

Installer les dépendances de construction de rootstrap :

 apt-get build-dep rootstrap

Devscript contients les utilitaires utilisés lors de la construction d'un paquet.

 apt-get install devscripts

Récupérer les sources du paquet rootstrap, en tant qu'utilisateur:

 apt-get source rootstrap

Retirer la dépendance envers user-mode-linux du fichier debian/control dans les sources de rootstrap.

Mettre à jour le changelog

 dch -n

Créer le paquet

 debuild -us -uc

installer le paquet créé.

Installation de rootstrap - Autre Méthode

Un développeur debian a rencontré ces problèmes (Debian bug #275410), et a recompilé les paquets. Ajouter dans /etc/apt/sources.list :

 deb http://people.debian.org/~madduck/packages/nmu/rootstrap ./

puis mettre a jour la liste des paquets :

 apt-get update

et enfin installer le paquet :

 apt-get install rootstrap
israd/debuml.txt · Dernière modification: 2007/03/14 06:08 par delepine