kernel-package(5) Système pour créer des paquets liés au noyau

DESCRIPTION

Le paquet kernel-package est né du désir d'automatiser les étapes du processus requis pour compiler et installer un noyau personnalisé. Si vous cherchez des informations sur la façon d'utiliser kernel-package, jetez un coup d'œil sur le manuel make-kpkg(1). Vous trouverez les instructions de configuration dans kernel-pkg.conf(5).

Avantages de l'utilisation de kernel-package

i) Le confort
Il est parfois habituel de compiler les noyaux à la main, ce qui implique toute une série d'étapes à suivre dans l'ordre ; kernel-package a été écrit afin de prendre en charge toutes les étapes requises (il va plus loin maintenant, mais c'est ce qu'il fait essentiellement). Ce point est particulièrement important pour les débutants. make-kpkg gère toutes les étapes nécessaires à la compilation d'un noyau, et l'installation de noyaux devient un jeu d'enfant.
ii) Gestion de plusieurs images
Vous pouvez maintenir plusieurs versions d'images de noyau sur la machine sans soucis.
iii) Plusieurs saveurs de la même version du noyau
Vous pouvez maintenir plusieurs « saveurs » d'une même version du noyau sur votre machine (vous pouvez avoir une version 2.0.36 stable, et une version 2.0.36 corrigée avec les derniers pilotes, sans risque de contamination des modules présents dans /lib/modules).
iv) Réglages par défaut inclus
Le paquet sait que certaines architectures utilisent vmlinuz (plutôt que vmlinux), et d'autres zImage plutôt que bzImage. Il appelle alors la bonne cible et prend en charge la copie du bon fichier au bon endroit.
v) Entrées pour les modules
Plusieurs autres paquets de modules sont intégrés dans kernel-package, ce qui permet de façon transparente la compilation (par exemple) des modules pcmcia pendant que quelqu'un d'autre au même moment compile le noyau, tout en ayant l'assurance que les modules ainsi compilés seront compatibles avec ce noyau.
vi) Gestion par dpkg
Vous pouvez gérer les noyaux ainsi créés avec le système de gestion des paquets, car un fichier .deb est créé, et dpkg peut en prendre le contrôle. Cela facilite la tâche des autres paquets qui dépendent des paquets du noyau.
vii) Suivi de configuration
Il garde une trace du fichier de configuration de chacune des images du noyau dans /boot, fichier qui fait partie du paquet. Les images du noyau et le fichier de configuration sont, à partir de cet instant, toujours associés.
viii) Plusieurs fichiers de configuration
Vous pouvez indiquer un répertoire de fichiers de configuration, contenant des fichiers différents pour chaque sous-architecture (et même différents fichiers de configuration pour i386, i486, etc.). C'est très pratique pour ceux qui ont besoin de compiler des noyaux pour une grande variété de sous-architectures.
ix) Paquets .deb associés au noyau
It allows one to create a package with the headers, or the sources, also as a deb file, and enables the package management system to keep track of those (and there are packages that depend on the package management system being aware of these packages).
x) Création de script du responsable
Lorsque le paquet image du noyau est un paquet Debian complet, il est fourni avec les scripts du mainteneur, ce qui permet à l'utilisateur l'ajout de scripts « hook » à exécuter lorsque l'état du paquet est modifié.
xi) Gestion des sous-architectures
La multitude des sous-architectures qui ont fleuris à l'ombre du m68k et du power-pc est gérée.
xii) Images de noyau portables
Vous pouvez compiler un noyau pour un autre ordinateur, en utilisant par exemple une machine rapide pour la compilation d'un noyau à destination d'une machine plus lente. C'est vraiment très pratique puisque les modules sont inclus dans le fichier .deb, et que l'on n'a pas à gérer les modules à la main.
xiii) Points d'entrée lors de l'exécution
Les scripts de préinstallation, postinstallation, de présuppression et de postsuppression offrent à l'administrateur de la machine locale la possibilité d'inclure un script « hook » dans le déroulement de l'installation. Cela permet, entre autres, aux utilisateurs de GRUB l'ajout ou la suppression d’éléments pointant sur les noyaux dans le menu de démarrage (des scripts d'exemple sont fournis dans le paquet). Des paquets associés pourront déposer des scripts dans certains répertoires sous /etc/kernel, qui seront exécutés par ceux du responsable de paquet créés par kernel-package. Avant l'exécution de ces scripts, la variable d'environnement KERNEL_PACKAGE_VERSION doit contenir la version de kernel-package qui a créé le paquet.
xiv) Description précise de la version du noyau
Vous pouvez ajouter un descriptif à la version du noyau soit en ligne de commande, soit en définissant une variable d'environnement. De cette façon, si votre noyau s'appelle kernel-image-2.4.1Chez.Paulo, il a peu de chances d'être effacé par le noyau 2.4.1 officiel, puisqu'il ne s'agit pas de la même version.

Inconvénients de l'utilisation de make-kpkg

i) Automatisation
La fabrication de noyaux par cette méthode est une approche prémâchée, et des gens préféreront le brut de fonderie.
ii) Non traditionnel
Ce n'est pas l'usage hors du monde Debian. Cela rompt avec la tradition (d'un autre coté, cela devient une tradition Debian de plus en plus répandue).
iii) Il faut être administrateur
Vous êtes obligé d'utiliser fakeroot, sudo, super ou d'être superutilisateur pour créer le fichier .deb de l'image du noyau (ce n'est pas pire qu'avant, quand il n'y avait pas fakeroot).

FICHIERS

/etc/kernel-pkg.conf
/etc/kernel-img.conf

BOGUES

Il n'y a pas d'erreur. Toute ressemblance avec un bogue est du délire. Vraiment.

AUTEUR

Cette page a été écrite par Manoj Srivastava, <[email protected]>, pour le système Debian GNU/Linux.