Gentoo Logo

Avertissement : Ce document n'est plus valide ou plus maintenu.


Guide genkernel pour Gentoo Linux

Table des matières :

1.  Introduction

Motivation

Destiné aux utilisateurs qui ne sont pas familiers avec la compilation de noyau, genkernel est un outil qui automatise cette procédure. Il vous aidera à créer une image de noyau telle que celles présentes sur les CD-ROM d'installation de Gentoo, conçues pour détecter automatiquement la configuration matérielle de votre système. Genkernel peut aussi être utilisé avec du matériel qui requiert une initialisation ou bien juste pour créer un noyau fonctionnel avant le premier démarrage de votre nouveau système. Puisque genkernel compile automatiquement vos modules de noyau, vous pouvez utiliser du matériel qui requiert que certains paramètres soient passés à certains modules pour fonctionner.

Public visé

Si vous n'êtes pas sûr de la façon de faire pour compiler un noyau ou si vous ne connaissez pas vraiment votre configuration matérielle, alors genkernel sera un outil très pratique. Il a été conçu pour supprimer toutes les parties compliquées du processus de compilation du noyau et pour supporter la majorité du matériel disponible.

Si vous savez déjà de quels pilotes a besoin votre système pour fonctionner, cela peut vous faire économiser un bon temps de compilation. En effet, vous pouvez indiquer à genkernel de ne compiler que les pilotes requis pour votre matériel. En principe, le nombre de ces pilotes sera inférieur au nombre de pilotes de la configuration par défaut, ce qui explique la réduction de temps de compilation.

Installer genkernel

Pour pouvoir utiliser genkernel, lancez la commande emerge genkernel. Si vous utilisez la plate-forme de référence Gentoo (GRP), n'oubliez pas d'utiliser l'option -k pour installer les paquets binaires. Comme les paquets GRP ont une version plus ancienne de genkernel, les options diffèreront. Dans tous les cas, il vous est recommandé de consulter genkernel --help pour savoir comment fonctionne la version de genkernel que vous venez d'installer.

2.  Travailler avec genkernel

Comment utiliser genkernel

Bien qu'il y ait plusieurs façons de lancer genkernel, la plus simple reste genkernel all. Une configuration générique qui marche correctement pour tous les systèmes sera alors utilisée. Comme mentionné précédemment, cette méthode n'est pas sans défaut. La plupart des modules compilés ne seront pas utilisés et la compilation prendra beaucoup de temps. L'illustration suivante montre une approche plus efficace, en passant certains paramètres à genkernel :

Exemple de code 2.1 : Exécuter genkernel (avec des options)

# genkernel --bootsplash --no-install --no-clean --menuconfig all

Cette opération indique à genkernel de créer un noyau avec un écran de démarrage (--bootsplash) qui devra être installé à la main (--no-install). Dans la phase préparatoire de compilation, genkernel n'effacera pas les objets déjà compilés (--no-clean). Enfin, un menu de configuration sera affiché, permettant à l'utilisateur de choisir quels modules seront compilés (--menuconfig).

D'autres paramètres peuvent modifier le comportement de genkernel. Par exemple, remplacez --no-install par --install pour qu'il installe automatiquement le nouveau noyau dans /boot. En utilisant le paramètre --mountboot, la partition /boot sera monté par genkernel automatiquement, si nécessaire.

Souvenez-vous que genkernel a été conçu pour simplifier la compilation du noyau et pour soulager l'utilisateur. Pour cette raison, genkernel dispose de paramètres pour faciliter l'ensemble du processus de compilation de noyau. Par exemple, certaines options vont vous aider à configurer votre noyau, tandis que d'autres concerneront la compilation en elle-même ou bien encore le débogage de la compilation. Pour les personnes qui voudraient optimiser encore plus le processus, il existe des paramètres qui concernent l'assemblage du noyau et même son initialisation.

Le reste du chapitre détaille les diverses fonctionnalités des nombreux paramètres et commandes de genkernel. Quelques-unes des options disponibles fonctionnent comme un interrupteur, on place no- devant pour désactiver l'option. L'effet produit dans ce cas est indiqué entre crochets [].

Paramètres de configuration

Les options de configuration listées ci-dessous sont là pour vous aider à décider quelle fonctionnalité doit être activée ou pas dans le noyau, avant de le compiler. Vous pouvez même choisir si le fichier de configuration ainsi généré sera sauvegardé ou pas. Voici les options de configuration principales :

  • --no-menuconfig : Ceci lance [ou ne lance pas] la commande make menuconfig (ce qui démarre un outil de configuration en mode texte) avant de compiler votre noyau.
  • --gconfig : Sélectionne la version GTK+ de l'outil de configuration du noyau. L'avantage de cette option est que la majorité des utilisateurs trouvent cette interface plus claire et facile à utiliser pour configurer le noyau, puisqu'elle utilise le système X-Window. Son inconvénient est que vous devez avoir X-Window pour l'utiliser, cela ne marchera pas dans une console en ligne de commande.
  • --xconfig : Sélectionne la version Qt de l'outil de configuration du noyau. L'avantage de cette option est que la majorité des utilisateurs trouvent cette interface plus claire et facile à utiliser pour configurer le noyau, puisqu'elle utilise le système X-Window. Son inconvénient est que vous devez avoir X-Window pour l'utiliser, cela ne marchera pas dans une console en ligne de commande.
  • --no-save-config : Sauve [ou ne sauve pas] la configuration du noyau dans un fichier situé dans le répertoire /etc/kernels pour une future utilisation.

Options de compilation

Les paramètres suivants seront généralement pris en compte pendant la compilation :

  • --kerneldir=/chemin/des/sources : Pour spécifier l'endroit où se trouvent les sources du noyau, si ce n'est pas /usr/src/linux.
  • --kernel-config=/chemin/vers/le/fichier/config : Pour spécifier un autre fichier de configuration que /chemin/des/sources/.config.
  • --module-prefix=/chemin/des/modules : Pour spécifier un autre répertoire que /lib/modules pour y installer les modules du noyau.
  • --no-clean : Ceci lance [ou ne lance pas] make clean avant de compiler le noyau, ce qui efface toutes les dépendances et fichiers objets déjà présents.
  • --no-mrproper : Ceci lance [ou ne lance pas] make mrproper avant de compiler le noyau. Comme la commande make clean, make mrproper efface toutes les dépendances et fichiers objets de l'arborescence des sources du noyau, mais elle efface également les fichiers de configuration (tels que /path/to/sources/.config ou /path/to/sources/.config.old).
  • --oldconfig : Lance la commande make oldconfig, qui essaira de collecter des informations de configuration pour votre architecture depuis un script générique situé dans /usr/share/genkernel. De plus, si --oldconfig est utilisé en même temps que --clean, cette dernière sera annulée, comme si on avait rajouté l'option --no-clean.
  • --callback="echo Hello" : Cette routine effectue un appel à l'argument spécifié (ici, echo Hello) après que le noyau et les modules correspondants aient été construits, mais avant de créer l'image initrd. C'est utile lorsque vous souhaitez installer des modules externes dans l'initrd en passant la commande emerge en argument et redéfinir de ce fait un nouveau groupe de modules genkernel.
  • --no-install : Lance [ou ne lance pas] la commande make install, ce qui installe votre nouveau noyau, le fichier de configuration, l'image initrd et le System.map sur votre partition monté de boot. Les modules compilés seront aussi installés.
  • --no-initrdmodules : Empêche la copie des modules dans l'initrd généré par genkernel. Cette option en no- est une exception, il n'existe pas d'option opposée.
  • --genzimage : Crée l'image initrd avant l'image du noyau. (Cette bidouille ne s'applique actuellement qu'aux systèmes PPC Pegasos.)

Options du compilateur

Les paramètres suivants sont supportés par genkernel et sont passés aux applications concernées lorsque le noyau est en cours de construction. Ces options affectent le compilateur utilisé dans le processus de compilation du noyau, quoiqu'à un niveau bien plus bas.

  • --kernel-cc=unCertainCompilateur : Ceci spécifie un compilateur qui sera utilisé pour construire votre noyau.
  • --kernel-ld=unCertainÉditeurDeLiens : Ceci spécifie un éditeur de liens utilisé dans la construction de votre noyau.
  • --kernel-as=unCertainAssembleur : Ceci spécifie un assembleur qui sera utilisé pour construire votre noyau.
  • --kernel-make=unCertainMake : Ceci spécifie un utilitaire GNU make alternatif qui sera utilisé pour la construction de votre noyau.
  • --utils-cc=unCertainCompilateur : Ceci spécifie un compilateur qui sera utilisé pour construire les outils annexes.
  • --utils-ld=unCertainÉditeurDeLiens : Ceci spécifie un éditeur de liens utilisé dans la construction des outils annexes.
  • --utils-as=unCertainAssembleur : Ceci spécifie un assembleur qui sera utilisé pour construire les outils annexes.
  • --utils-make=unCertainMake : Ceci spécifie un utilitaire GNU make alternatif qui sera utilisé pour la construction des outils annexes.
  • --makeopts=-jX : Spécifie le nombre de fils d'exécution concurrents que make peut utiliser pendant la compilation du noyau et des outils. La variable « X » est un nombre obtenu en ajoutant un (1) au nombre de processeurs du système. Pour un système monoprocesseur, la valeur appropriée serait -j2. Un biprocesseur utiliserait -j3 et ainsi de suite. (Un système monoprocesseur qui supporte la technologie Hyper-Threading™ (ou « HT ») peut utiliser la valeur -j3, en supposant que le support du SMP (Symmetric Multi-Processing) soit activé dans le noyau au moment de la compilation.)

Options de débogage

L'utilisation d'options de débogage pendant la compilation du noyau contrôle le nombre d'informations reportées, ainsi que la présentation de celles-ci.

  • --debuglevel=NiveauVerbosité : Contrôle le niveau de verbosité des informations fournies par genkernel. La variable NiveauVerbosité doit être un nombre entier compris entre 0 et 5. Le niveau « 0 » représentant le minimum d'information, tandis qu'une valeur de « 5 » fournira le plus d'informations possible sur le déroulement des opérations.
  • --debugfile=/chemin/vers/fichier/de/log : Ignore la valeur de --debuglevel et renvoie toutes les informations produites par genkernel vers le fichier spécifié, qui est /var/log/genkernel.log par défaut.
  • --no-color : Active [ou désactive] la sortie colorée des informations de débogage (celles reportées par genkernel).

Options d'initialisation

Les options présentées ici sont utilisées pour créer certains effets lors du démarrage du système. Certaines sont purement esthétiques, tandis que d'autres sont nécessaires pour activer une fonctionnalité particulière.

  • --no-bootsplash : Ajoute [ou n'ajoute pas] le support de bootsplash (l'écran de démarrage) à l'initrd que construit genkernel. Toutes les architectures n'offrent pas à l'heure actuelle le support de l'écran de démarrage ; un noyau qui le supporte est également requis.
  • --no-gensplash : Ajoute [ou n'ajoute pas] le support de gensplash à l'initrd que construit genkernel. L'outil gensplash est supposé remplacer bootsplash pour les noyaux 2.6. Pour écraser le thème par défaut utilisé par gensplash, utilisez --gensplash=MonTheme (où MonTheme est le nom de l'un des répertoires situés dans /etc/splash.
  • --gensplash-res=MaResolution : Cette option vous permet de sélectionner les résolutions supportées par l'initrd au démarrage. Elle est utile pour deux raisons : d'abord, vous pouvez choisir quelles résolutions sont supportées spécifiquement par votre système, ensuite, vous réduisez la quantité d'espace occupée par l'initrd puisque ce dernier n'a plus à s'occuper des résolutions que vous n'utiliserez pas. Cependant, vous pouvez ignorer cette option si vous compilez un noyau pour un CD d'installation, ce qui permettra à gensplash de supporter toutes les résolutions possibles.
  • --do-keymap-auto : Force la sélection du modèle de clavier lors du démarrage.
  • --lvm2 : Inclut le support des volumes gérés par LVM2 grâce à des binaires statiques, s'ils sont disponibles. Les binaires (statiques) LVM2 en question sont compilés le cas échéant. Assurez-vous d'avoir installé le paquet lvm2 sur votre système avec emerge lvm2 avant d'activer cette option et d'avoir lu le guide Gentoo LVM2.
  • --evms2 : Inclut le support des volumes gérés par EVMS2, si disponible. Assurez-vous d'avoir installé le paquet evms sur votre système avec USE=static emerge evms2 avant d'utiliser cette option genkernel. (L'absence de l'option USE=static lors de l'installation du paquet empêchera la compilation des binaires statiques nécessaires.)
  • --dmraid : Inclut le support de DMRAID, l'outil qui crée des volumes RAID logiciels en utilisant le sous-système device-mapper du noyau. DMRAID découvre, active, désactive et affiche les propriétés des volumes RAID (ATARAID par exemple).
  • --luks : Inclut le support de Linux Unified Key Setup (LUKS). Cela vous permettra d'utiliser un périphérique chiffré par LUKS pour placer votre système de fichiers racine (/). Spécifiez alors au chargeur de démarrage le nom de ce périphérique via la variable crypt_root (real_root doit être le nom du périphérique une fois déchiffré).
  • --linuxrc=/chemin/vers/le/linuxrc : Spécifie un linuxrc créé par l'utilisateur qui sera appelé lors de la phase de démarrage du noyau, avant le démarrage du système. (Un script linuxrc par défaut devrait se trouver dans /usr/share/genkernel/.) Ce script vous permet d'amorcer sur un petit noyau modulaire et de charger les pilotes requis (sous forme de modules) par le système avant le démarrage.
  • --cachedir=/chemin/vers/autre/rep : Remplace le chemin par défaut du cache utilisé pendant la compilation.
  • --tempdir=/chemin/vers/autre/rep : Spécifie le chemin du répertoire temporaire utilisé par genkernel lors de la compilation du noyau.
  • --unionfs : Inclut le support Unification File System dans l'initrd.

Options diverses

Les options suivantes n'ont pas pu être classées dans une autre catégorie :

  • --mountboot : Détecte si le répertoire /boot a besoin d'être monté en lisant le /etc/fstab.
  • --kernname=Nom : Vous permet de nommer le noyau et l'initrd qui seront copiés dans /boot, de sorte que les fichiers produits soient kernel-Nom-version et initramfs-Nom-version.

Actions possibles

Une action indique à genkernel ce qu'il faut construire. Voici les actions actuellement supportées :

  • initrd : Ne construit que l'initrd.
  • bzImage : Ne construit que le noyau.
  • kernel : Ne construit que le noyau et les modules.
  • all : Construit l'initrd, le noyau et les modules.

La dernière action, all, est recommandée car elle construit tout ce qui est nécessaire pour obtenir un noyau fonctionnel. Rappelez-vous, une action indique juste à genkernel ce qu'il faut construire et non pas ce qu'il faut installer.

Configuration du chargeur de démarrage

Pour que genkernel puisse travailler avec votre chargeur de démarrage, vous devez procéder à trois ou quatre modifications de la configuration de celui-ci :

  1. Ajoutez root=/dev/ram0 et init=/linuxrc aux options du noyau.
  2. Ajoutez real_root=/dev/hda3, par exemple, aux options du noyau, si /dev/hda3 est votre partition racine.
  3. Si vous utilisez bootsplash, ajoutez une option telle que vga=0x317 aux paramètres passés au noyau, ainsi que splash=verbose ou splash=silent, selon la verbosité désirée.
  4. Ajoutez l'instruction qui active l'utilisation d'une image initrd. Vous pouvez consulter le chapitre sur la configuration du chargeur de démarrage du Manuel Gentoo pour plus de détails.

3.  Options de configuration

Modifier /etc/genkernel.conf

La quantité d'options disponibles peut être encombrante si vous les utilisez toutes en ligne de commande :

Exemple de code 3.1 : Exécution de genkernel (avec de nombreuses options)

# genkernel --debuglevel=5 --no-color --no-mrproper --clean --gensplash \
--kerneldir=/chemin/vers/sources --install --menuconfig \
--kernel-config=/chemin/vers/config --save-config --mountboot all

Heureusement, on peut placer la plupart des paramètres les plus utilisés dans un fichier de configuration afin de pouvoir les régler ou les modifier plus facilement. Voici une liste des options les plus significatives :

  • MENUCONFIG=[yes|no] : Cette option est équivalente au paramètre --menuconfig de genkernel, ce qui active l'utilisation de la commande make menuconfig pour lancer l'utilitaire de configuration du noyau en ligne de commande. Pour que l'utilitaire soit lancé automatiquement lors de la configuration du noyau, mettez la valeur « yes », sinon mettez « no ».
  • CLEAN=[yes|no] : Mettre « yes » pour cette variable équivaut à utiliser l'option --clean de genkernel et lance la commande make clean pour effacer tous les fichiers objets et les dépendances de l'arborescence du noyau. Mettre « no » pour cette variable provoque l'effet domino d'activer l'option --no-clean de genkernel, qui désactive la commande make clean, ainsi que l'option --no-mrproper, qui désactive la commande make mrproper.
  • MRPROPER=[yes|no] : Mettez la valeur « yes » ici pour activer l'option --mrproper de genkernel et donc lancer la commande make mrproper, ce qui nettoie l'arborescence du noyau de tout fichier de configuration. Choisissez « no » pour provoquer l'effet inverse, c'est-à-dire l'option --no-mrproper, qui ne lance pas make mrproper.
  • MOUNTBOOT=[yes|no] : Mettre « yes » ici active l'option --mountboot de genkernel, qui montera automatiquement (si nécessaire) le répertoire /boot lors de la compilation. Si votre répertoire /boot est sur une partition séparée, nous vous recommandons d'activer ce paramètre, cela fera une chose de moins à se souvenir de faire.
  • SAVE_CONFIG=[yes|no] : Après avoir configuré le noyau, les options choisies sont sauvées dans le fichier .config à la racine de l'arborescence du noyau. Ce fichier peut se faire écraser lors d'une recompilation de noyau ou lors d'un nettoyage. En mettant « yes » ici, cela activera l'option --save-config de genkernel qui a pour effet de sauver ce fichier dans le répertoire /etc/kernels.
  • USECOLOR=[yes|no] : Mettez « yes » ici pour activer l'option --color de genkernel qui provoque l'affichage coloré des messages de genkernel, lorsque nécessaire.
  • DEBUGLEVEL=[0|1|2|3|4|5] : Cette option permet d'ajuster la verbosité des messages produits par genkernel. La valeur 0 supprimera complètement tous les messages de débogage tandis que 5 provoquera l'affichage de la totalité des informations disponibles.

En réglant les options appropriées directement dans /etc/genkernel.conf, vous pouvez diviser par deux le nombre d'arguments à placer sur la ligne de commande de genkernel :

Exemple de code 3.2 : Lancer genkernel après avoir renseigné genkernel.conf

# genkernel --gensplash --kerneldir=/chemin/vers/sources \
--kernel-config=/chemin/vers/config --install all

On obtient des résultats identiques avec les deux approches, pourtant la majorité des options de la dernière sont rangées dans un fichier, ce qui permet leur réutilisation et leur modification future.

4.  Démarrer sur le réseau avec genkernel

Démarrer sur un CD-ROM d'installation Gentoo depuis le réseau

L'outil genkernel peut fabriquer des images de noyaux et d'initrd qui permettent de démarrer sur le réseau (netboot). Avec un peu de chance, vous devriez pouvoir faire démarrer n'importe quel ordinateur récent par le réseau sur l'environnement fourni par le CD-ROM d'installation de Gentoo.

La magie de la chose réside dans le script linuxrc de genkernel : il va essayer de monter le CD-ROM d'installation par NFS via le réseau. Partant de là, les scripts d'initialisation du CD-ROM d'installation seront utilisés comme si le CD était présent en local.

Construire un noyau et un initrd qui supportent le démarrage par le réseau

Pour activer le support du démarrage par le réseau, activez les options suivantes lors de la configuration du noyau :

Attention : Le support du démarrage par le réseau avec genkernel est expérimental et peut contenir quelques bogues.

Tout d'abord, l'image du noyau doit contenir les pilotes de votre carte réseau. En principe, les pilotes pour ce genre de périphériques sont compilés en tant que modules. Pourtant, il est impératif ici (pour pouvoir démarrer avec) que ces pilotes soient intégrés dans le noyau et pas en modules.

Exemple de code 4.1 : Configurer un noyau 2.6 en activant la carte réseau

Device Drivers --->
   Networking Support --->
      Ethernet (10 or 100Mbit)  ---> 
         [*] Ethernet (10 or 100Mbit)  
         <*>   le pilote de votre carte réseau ici
(Assurez-vous de choisir <*> et non <M>.)

Ensuite, nous vous suggérons d'activer IP: kernel level autoconfiguration et IP: DHCP support. Cela évitera une couche supplémentaire de complexité si l'adresse IP et le chemin NFS du CD-ROM d'installation peuvent être spécifiés par un serveur DHCP. Bien sûr, cela signifie que la ligne de commande d'appel du noyau sera la même pour toutes les machines.

Exemple de code 4.2 : Configurer un noyau 2.6 pour qu'il supporte le DHCP

Device Drivers --->
   Networking Support --->
      Networking options  
         [*] TCP/IP networking--->
         [*]   IP: kernel level autoconfiguration
         [*]     IP: DHCP support
(Ces options indiquent au noyau d'envoyer une requête DHCP au démarrage.

De plus, vous devez activer SquashFS car la majorité des CD-ROM d'installation récents de Gentoo l'utilisent. Le support de SquashFS n'est pas intégré aux sources génériques de Linux, vous devrez appliquer les correctifs nécessaires ou bien installer les gentoo-sources.

Exemple de code 4.3 : Configurer le noyau pour gérer SquashFS

File systems---> 
   Miscellaneous filesystems --->
      [*] SquashFS 2.X - Squashed file system support

Une fois que le processus de compilation est terminé, créez une archive compressée (.tar.gz) qui contient les modules du noyau. Cette étape n'est nécessaire que si la version de votre noyau ne correspond pas à la version de l'image située sur le CD-ROM d'installation.

Exemple de code 4.4 : Créer une archive qui contient les modules du noyau

# cd /
#  tar -cf /tmp/modules-X.Y.Z.tar.gz /lib/modules/X.Y.Z/

Selon votre méthode de démarrage par le réseau, vous devrez exécuter certaines des étapes suivantes :

Exemple de code 4.5 : Créer une image de démarrage

(Créer une image etherboot.)
# emerge mknbi
# cd /boot
# mkelf-linux -params="root=/dev/ram0 init=/linuxrc ip=dhcp" kernel... initrd... > etherboot.img

(Créer une image TFTP OpenBoot / SPARC64.)
# emerge sparc-utils
# cd /boot
# elftoaout kernel... -o kernel.aout
# piggyback64 kernel.aout System.map-... initrd-...
# mv kernel.aout openboot.img (C'est l'image de démarrage.)

(PXE ne requiert pas d'étape supplémentaire, le noyau et l'initrd
peuvent être utilisés tels quels.)

Enfin, copiez ce noyau sur votre serveur TFTP. La manière de procéder dépend complètement de votre architecture et dépasse les limites de ce guide. Veuillez consulter la documentation de votre plate-forme.

Configuration du NFS

Pour mettre en place un partage NFS qui contient le CD-ROM d'installation, utilisez un périphérique de bouclage (loop device) pour y monter l'image ISO et copiez le contenu du CD dans le partage NFS. En bonus, le script initrd de genkernel désarchivera tous les fichiers .tar.gz situés dans le répertoire /nfs/livecd/add. Tout ce qu'il vous reste à faire est de copier votre archive modules-X.Y.Z.tar.gz dans le répertoire /nfs/livecd/add.

Exemple de code 4.6 : Préparation du partage NFS

(En supposant que /nfs/livecd soit un partage NFS.)
# mount /tmp/gentoo-livecd.iso /mnt/gentoo -o loop
# cp -p /mnt/cdrom /nfs/livecd
# umount /mnt/cdrom

(Copiez modules.tar.gz dans /add.)
# mkdir /nfs/livecd/add
# cp /tmp/modules-X.Y.Z.tar.gz /nfs/livecd/add

Configuration du DHCP

Les images netboot demanderont une adresse IP et un chemin NFS à votre serveur DHCP. Ces informations peuvent être configurées individuellement en utilisant l'adresse MAC pour identifier les machines :

Exemple de code 4.7 : Exemple de configuration dhcpd.conf

...

host netbootableMachine {
         hardware ethernet 11:22:33:44:55:66;
         fixed-address 192.168.1.10;
         option root-path "192.168.1.2:/nfs/livecd";
}
# Ici, 192.168.1.2 est le serveur NFS,
# tandis que 192.168.1.10 sera l'adresse IP du client.
...

Utilisation du démarrage par le réseau

Le démarrage par le réseau est encore une fois très spécifique à la plate-forme utilisée. Ce qui est important, c'est de spécifier les paramètres ip=dhcp et init=/linuxrc sur la ligne de commande du noyau. Cela activera la carte réseau et montera le CD-ROM d'installation via NFS. Voici quelques astuces pour certaines plates-formes :

Exemple de code 4.8 : Comment démarrer par le réseau

# Etherboot : insérez le disque etherboot dans le lecteur et redémarrez.
# La ligne de commande du noyau a été spécifiée lors de la construction de
# l'image.

# Sparc64 : Tapez Stop-A lors de l'invite de démarrage, puis :
ok boot net ip=dhcp init=/linuxrc

# PXE : Configurez pxelinux (qui fait partie de syslinux),
# puis créez un fichier pxelinux.cfg/default qui contient ces lignes :

DEFAULT gentoo
TIMEOUT 40
PROMPT 1

LABEL gentoo
    KERNEL kernel-X.Y.Z
    APPEND initrd=initrd-X.Y.Z root=/dev/ram0 init=/linuxrc ip=dhcp

5.  Conclusion

Automatiser ou pas ?

Le but de genkernel est de proposer une alternative plus simple pour la compilation du noyau. Comme toujours, c'est vous qui décidez si vous voulez automatiser le processus de compilation du noyau ou pas.



Imprimer

Dernière mise à jour le 20 juin 2007

Une version originale plus récente datée du 22 juin 2008 existe.

Résumé : Ce guide a pour but de constituer une documentation de référence concernant toutes les fonctions de genkernel.

Tim Yamin
Auteur

Jimi Ayodele
Contributeur

Thomas Seiler
Support NFS

Camille Huot
Traducteur

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

Linux World Expo

Linux World Expo

Copyright 2001-2008 Gentoo Foundation, Inc. Questions, Comments? Contact us.