
                    Le HOWTO du noyau Linux (Kernel HOWTO)

par Brian Ward, ward@blah.tu-graz.ac.at

   Version 1.0, 5 juin 1999
     _________________________________________________________________

   _(5 juillet 1999. Adaptation franaise par Eric Dumas dumas@freenix.fr
   jusqu' la version 0.80, Christophe Deleuze christophe.deleuze@lip6.fr
    partir de la version 1.0). Il s'agit d'un guide dtaill sur la
   configuration du noyau, sa compilation et ses mises  jour pour les
   plates-formes x86._
     _________________________________________________________________

1. Introduction

   Faut-il que vous lisiez ce document ? Oui, si vous avez les symptmes
   suivants :

     * "Arg ! Cette archive TrucBidule-46.5.6 ncessite la version du
       noyau 2.8.193 et je n'ai que la version 1.0.9 ! "
     * Il y a un pilote de priphrique dont vous avez besoin dans l'un
       des nouveaux noyaux.
     * Vous n'avez aucune ide de la manire dont il faut s'y prendre
       pour recompiler le noyau.
     * "Est-ce que ce truc dans le fichier _README_ dcrit toute la
       marche  suivre ?"
     * Vous avez essay, a ne marche pas !
     * Vous devez donner un conseil  une personne qui a certains
       problmes.

1.1 Lisez ceci en premier (enfin bon, c'est un conseil) !

   Certains exemples prsents dans ce document prsupposent que vous
   possdez les programmes GNU tar, find et xargs. Ils sont assez
   standards, et ne devraient pas vous poser trop de problmes. On
   suppose galement que vous connaissez la structure de votre disque
   (partitions). Si vous ne le savez pas, il est impratif que vous
   gardiez une copie sur papier du rsultat de l'excution de la commande
   mount (ou bien une copie du fichier /etc/fstab, si vous savez le
   lire). Cette information est importante, et ne change pas  moins que
   vous ne repartitionniez votre disque, en ajoutiez un nouveau,
   rinstalliez votre systme, ou quelque chose de similaire.

   La dernire version stable du noyau au moment o j'cris ces mots est
   la 2.2.9, ce qui signifie que les rfrences et les exemples donns
   correspondent  cette version. Mme si j'ai essay de faire en sorte
   que ce document soit aussi indpendant que possible des versions, le
   noyau est en perptuel dveloppement, donc si vous rcuprez une
   nouvelle version, il risque d'y avoir quelques diffrences. Cela ne
   devrait pas poser trop de problmes mais risque de semer un peu la
   confusion.

   Il existe deux versions des sources du noyau : une version dite
   "stable" et une version de dveloppement. Les version stables ont des
   numros de version pairs : 1.2.x, 2.0.x sont des versions stables...
   tout comme la 2.2.x. Ces noyaux sont considrs comme tant les plus
   stables et sans erreurs. Les noyaux de dveloppement (1.3.x, 2.1.x,
   etc) sont des noyaux de test, pour les dveloppeurs, les testeurs...
   mais ces noyaux peuvent tre trs bogus. Vous tes prvenus.

1.2 Un mot sur le style

   Un texte qui ressemble  celui-ci est soit un message qui apparat sur
   votre cran, soit un fichier, soit quelque chose qui peut tre
   directement saisi, comme une commande ou des options pour une commande
   (si vous possdez une version texte de ce document, il n'y a pas de
   diffrence).

2. Quelques questions... avec leurs rponses

2.1 Mais quel est le rle du noyau ?

   Le noyau Unix joue le rle d'intermdiaire entre vos programmes et
   votre matriel. Premirement, il gre la mmoire pour tous les
   programmes en cours d'excution (processus), et s'assure qu'ils
   occupent tous une part quitable (ou non) du temps processeur. En
   plus, il fournit une interface (simple  utiliser) aux programmes pour
   communiquer avec votre matriel (appels systme).

   Bien sr c'est un petit peu plus compliqu que a, mais ces fonctions
   de bases sont les plus importantes  connatre.

2.2 Pourquoi voudrais-je mettre  jour mon noyau ?

   Les nouveaux noyaux offrent plus de facilit pour communiquer avec
   plus de matriels (c'est--dire qu'ils grent plus de
   priphriques...), ils peuvent avoir une meilleure gestion des
   processus, tourner plus rapidement que les anciennes versions, tre
   plus stables et ils corrigent les erreurs stupides des versions
   prcdentes. Beaucoup de gens mettent  jour leurs noyaux car ils
   veulent avoir les nouveaux pilotes de priphriques et les corrections
   d'erreurs.

2.3 Quel genre de matriel supportent les nouveaux noyaux ?

   Jetez un coup d'oeil sur le Hardware-HOWTO. Vous pouvez aussi regarder
   le fichier "config.in" dans les sources de _Linux_, ou juste essayer
   "make config", ce qui vous permet de voir tous les matriels supports
   par le noyau standard, mais pas tout ce que _Linux_ supporte. En
   effet, beaucoup de priphriques assez utiles (tels les priphriques
   PCMCIA, et quelques lecteurs de cartouches) sont des modules
   chargeables maintenus et distribus sparment.

2.4 Quelle version de gcc ou de libc utiliser ?

   Linus recommande une version de gcc dans le fichier README fourni avec
   le code source. Si vous ne possdez pas cette version, la
   documentation dans la version recommande de gcc devrait vous indiquer
   si vous avez besoin de mettre  jour votre libc. Ce n'est pas une
   opration complique, mais il est important de suivre les
   instructions.

2.5 Que sont les modules chargeables (loadable modules) ?

   Ce sont des parties du noyau (pilotes de priphriques gnralement)
   qui ne sont pas compiles dans celui-ci. On peut les compiler
   sparment, les insrer et les retirer du noyau  n'importe quel
   moment. En raison de cette souplesse, c'est devenu la mthode prfre
   pour coder certaines fonctionnalits du noyau. Bon nombre de pilotes
   de priphriques tels que PCMCIA et les gestionnaires de cartouches
   QIC-80/40 sont des modules chargeables.

2.6 De combien d'espace disque ai-je besoin ?

   Cela dpend de la configuration de votre systme. Tout d'abord, le
   code source compress de _Linux_ fait presque 16 Mo pour la version
   2.2.9. Vous voulez gnralement le garder dans un coin aprs l'avoir
   dcompress. Dcompress et compil avec une configuration moyenne, il
   occupe 67 Mo de plus.

2.7 Combien de temps a prend ?

   Sur les machines rcentes la compilation demande beaucoup beaucoup
   moins de temps que sur les anciennes. Un AMD K6-2/300 avec un disque
   rapide peut compiler un noyau 2.2.x en  peu prs quatre minutes. Avec
   de vieux Pentium, 486 ou 386 soyez prts  patienter, ventuellement
   des heures, jours...

   Si cela vous pose problme et que vous avez accs  une machine
   rapide, vous pouvez compiler sur celle-ci (fournissez les bons
   paramtres, assurez-vous que vos utilitaires sont  jour, etc.) et
   transfrer l'image du noyau sur la machine lente.

3. Comment configurer le noyau ?

3.1 Rcuprer les sources

   Vous pouvez rcuprer les sources via ftp depuis ftp.kernel.org dans
   le rpertoire /pub/linux/kernel/vx.y, o x.y est la version (par ex.
   2.2). Comme expliqu plus haut les versions se terminant par un
   chiffre impair sont les versions de dveloppement et peuvent tre
   instables. Le fichier est typiquement linux-x.y.z.tar.gz, o x.y.z est
   le numro de version. Une version avec suffixe en .bz2 (compress avec
   bzip2) est aussi gnralement disponible (la compression bzip2 est
   plus performante donc le transfert sera plus rapide).

   Il vaut mieux utiliser ftp.xx.kernel.org o xx est votre code de pays,
   par exemple ftp.fr.kernel.org pour la France, ftp.be.kernel.org pour
   la Belgique.

3.2 Installer les sources

   Faites un su (super utilisateur) ou bien loggez-vous en tant que
   "root", et allez dans le rpertoire /usr/src. Si vous avez dj
   install les sources du noyau, il y aura dj un rpertoire appel
   "linux", contenant l'ensemble des sources du noyau. Si vous avez de la
   place disque et que vous voulez jouer la carte scurit, il est
   prfrable de conserver ce rpertoire intact. Un systme assez
   pratique consiste  renommer votre rpertoire en fonction du numro de
   la version. La commande "uname -r" vous indiquera le numro de la
   version du noyau actuellement en fonction.

   Par exemple, si "uname -r" donne "1.0.9," vous pourrez dplacer votre
   rpertoire (avec mv) "linux" en "linux-1.0.9". Si vous tes du genre
   tmraire, dtruisez le rpertoire. Dans tous les cas, soyez sr qu'il
   n'y ait aucun rpertoire "linux" dans /usr/src avant de dcompresser
   et d'installer les sources.

   Dans /usr/src, installez les sources en faisant "tar zxpvf
   linux-x.y.z.tar.gz" (si vous avez uniquement un fichier .tar, sans de
   .gz  la fin,"tar xpvf linux.x.y.z.tar" marchera sans problme). Vous
   verrez la liste des fichiers se drouler sous vos yeux. Lorsque c'est
   termin, il y aura un nouveau rpertoire "linux". Allez dans _linux_
   et jetez un coup d'oeil au fichier README. Il y a une section
   "INSTALLING the kernel". Suivez les instructions lorsque ncessaire -
   prenez garde  ce que les liens soient en place et que les fichiers .o
   soient dtruits, etc.

   Si votre fichier est en .bz2, il vous faudra utiliser le programme
   bzip2 (voir http://www.muraroa.demon.co.uk/). Faites:

     bz2cat linux-x.y.z.tar.bz2 | tar xvf -

3.3 Configurer le noyau

   Note : il s'agit d'une rptition, clarification de la section
   correspondante dans le fichier README de Linus.

   La commande "make config" lance un script qui va vous poser un certain
   nombre de questions. Il a besoin de bash, donc vrifiez que vous
   possdez bien /bin/bash, /bin/sh, ou $BASH.

   Il existe un certain nombre de possibilits autres que make config et
   il est possible que vous les trouviez plus simples  utiliser. Pour
   ceux qui utilisent X, vous pouvez essayer make xconfig si vous avez au
   pralable install Tk (_click-o-rama_ - Nat). make menuconfig est
   destin  ceux qui ont install (n)curses et qui prfrent utiliser un
   menu en mode texte. Ces interfaces ont un avantage : si vous vous
   trompez lors de la configuration, vous pouvez facilement corriger
   l'erreur sans devoir tout relancer.

   Avec make menuconfig et make xconfig les options de configuration
   apparatront hirarchises.

   Vous tes alors prt  rpondre aux questions, la plupart du temps par
   "y" ou par "n". Les pilotes de priphriques acceptent aussi
   gnralement "m", pour "module". Le pilote sera compil non pas
   directement dans le noyau mais en tant que module chargeable. Une
   interprtation plus amusante est que le "m" est pour "maybe"
   (peut-tre). Certaines options non critiques ou videntes ne seront
   pas dcrites ici. Consultez le paragraphe "Autres options de
   configuration" pour une courte descriptions de quelques options non
   dtailles ici. Avec make menuconfig vous pouvez utiliser la barre
   d'espace.

    partir des versions 2.0.x, une option "?" est prsente : elle permet
   d'obtenir une aide pour l'option dsire qui correspond srement aux
   informations les plus  jour. Voici une liste dcrivant brivement les
   options les plus importantes avec leur place dans la hirarchie (NdT :
   et la traduction de l'intitul).

  Kernel math emulation (Precessor type and features)

   _(mulation du coprocesseur Arithmtique)_ Si vous ne possdez pas de
   coprocesseur arithmtique (autrement dit, vous ne disposez que d'un
   386 ou d'un 486SX), rpondez "y". Si vous en avez un et que vous
   rpondez "y", ce n'est pas grave : le coprocesseur sera utilis et
   l'mulation ignore. Pour toute machine pas trop vieille, la rponse
   sera non.

  Enhanced (MFM/RLL) disk and IDE disk/cdrom support (Block Devices)

   _(Gestion amliore des disques durs)_ Vous devez  peu prs toujours
   rpondre oui  cette question. Cela signifie que le noyau pourra grer
   les disques standards des PC comme IDE, que bon nombre de gens
   possdent. Ceci n'inclut pas les disques SCSI : ils sont
   slectionnables plus tard dans la configuration.

   Une question porte sur les gestionnaires de priphriques "old
   disk-only" et "new IDE". Vous devez choisir l'un des deux. La
   principale diffrence est que le vieux gestionnaire de priphrique ne
   supporte qu'au plus deux disques sur une seule interface. Le nouveau
   gestionnaire gre une deuxime interface IDE et les disques CD-ROM
   IDE/ATAPI , et il est plus gros de 4 ko que l'ancien. Il est suppos
   "amlior" ce qui signifie qu' part avoir un nombre diffrent de
   bogues il peut amliorer les performances de votre disque, notamment
   si vous possdez du matriel rcent (comme de l'EIDE).

  Networking support (General Setup)

   _(Gestion du Rseau)_ En principe, vous ne devriez rpondre "y" que si
   votre machine se trouve sur un rseau tel qu'Internet ou si vous
   voulez utiliser SLIP, PPP, term, etc. pour communiquer avec un accs
   Internet externe. Toutefois, bon nombre de paquetages (tels que le
   systme X Window) ont besoin de ce support rseau mme si votre
   machine n'y est pas relie ; dans ce cas, rpondez "y". Plus tard, on
   vous demandera si vous voulez avoir le support TCP/IP. De mme,
   rpondez "y",  moins que vous ne soyez sr de ce que vous faites.

  System V IPC (General Setup)

   L'une des meilleures dfinition des IPC (communication
   inter-processus) se trouve dans le glossaire du livre de Perl. Ces
   mcanismes sont utiliss par certains dveloppeurs Perl et quelques
   autres paquetages (comme par exemple DOOM), donc ce n'est pas vraiment
   une bonne ide de rpondre "n"  cette question  moins que vous ne
   sachiez exactement ce que vous faites.

  Processor family (Processor type and features)

   _(Famille de processeur)_ Dans les anciens noyaux, il s'agissait de
   l'option Use -m486 flag for 486-specific optimizations.

   Cette option slectionnait certaines optimisations pour un type de
   processeur, le noyau fonctionnant normalement avec les autres
   processeurs. Le noyau gnr avait toutefois une taille lgrement
   suprieure. Dans les nouveaux noyaux, cette diffrence de taille n'est
   plus d'actualit donc vous pouvez indiquer le processeur que vous
   allez utiliser avec le nouveau noyau. Un noyau "386" fonctionnera avec
   toutes les machines.

  SCSI support

   _(Gestion SCSI)_ Si vous avez au moins un priphrique SCSI, rpondez
   "y". On vous demandera alors de plus amples renseignements sur la
   gestion des CD-ROM, des disques, et quel type de contrleur SCSI vous
   possdez. Consultez le SCSI-HOWTO pour plus de dtails.

  Network device support

   _(Gestion de priphriques rseau)_ Si vous avez une carte rseau, ou
   si vous voulez utiliser SLIP, PPP, ou un adaptateur sur port
   parallle, rpondez "y". Le script de configuration vous demandera
   alors quel type de carte vous possdez et quels protocoles vous voulez
   inclure.

  Filesystems

   _(Systmes de fichiers)_ On vous demandera quels types de systmes de
   fichiers vous souhaitez grer :

   Standard (minix) - Les distributions rcentes ne crent pas de
   systmes de fichiers de type minix, et bon nombre de personnes ne s'en
   servent pas, mais cela peut tre malgr tout une bonne ide de le
   configurer. Quelques programmes de "sauvetage de disques" l'utilisent,
   et encore aujourd'hui, un bon nombre de disquettes risquent d'avoir ce
   systme de fichiers, car il est assez pratique pour les disquettes.

   Second extended - C'est le systme de fichiers standard de Linux. Vous
   en aurez trs certainement besoin, donc "y". (NdT : et puis c'est un
   Franais qui l'a fait alors... !)

   msdos - Si vous voulez utiliser les partitions de votre disque MS-DOS,
   ou monter des disquettes au format MS-DOS, rpondez "y".

   Des systmes de fichiers originaires d'autres systmes d'exploitation
   sont galement disponibles.

   /proc - Un des systmes de fichiers les plus puissants (ide
   effrontment chipe aux Laboratoires Bell, je pense). a n'a rien 
   voir avec vos partitions disques, mais c'est une interface sous forme
   de systme de fichiers avec le noyau et les processus. Un grand nombre
   d'outils de visualisation de processus (comme "ps") l'utilisent. Si
   vous l'avez install, essayez "cat /proc/meminfo" ou "cat
   /proc/devices". Quelques shells (comme rc) utilisent /proc/self/fd
   (connu comme /dev/fd sur d'autres systmes) pour les entres/sorties.
   Vous devriez rpondre "y"  ceci : de nombreux programmes Linux
   standards en ont besoin.

   NFS - Si vous tes en rseau et que vous voulez utiliser des volumes
   prsents sur d'autres machines, rpondez "y".

   ISO9660 - Format rencontr sur la plupart des CD-ROM. Si vous possdez
   un CD-ROM et que vous comptez vous en servir sous Linux, rpondez "y".

  Mais je ne sais pas de quels systmes de fichiers j'ai besoin !

   Bon, tapez "mount", cela va vous afficher un truc comme a :

        blah# mount
        /dev/hda1 on / type ext2 (defaults)
        /dev/hda3 on /usr type ext2 (defaults)
        none on /proc type proc (defaults)
        /dev/fd0 on /mnt type msdos (defaults)

   Observez chacune des lignes. Le mot  ct de "type" est le type du
   systme de fichiers. Dans cet exemple, mes partitions / et /usr sont
   du type ext2fs, j'utilise /proc, et il y a une disquette monte avec
   le systme de fichiers MS-DOS (beuurrrk !).

   Essayez "cat /proc/filesystems" si vous avez /proc. Cela vous donnera
   la liste des systmes de fichiers que votre noyau gre.

   Le support de systmes de fichiers rarement utiliss et qui ne sont
   pas absolument ncessaires peut augmenter la taille du noyau. Voir la
   section sur les modules chargeables pour rsoudre ce problme, ainsi
   que la section sur les piges.

  Character devices

   _(Priphriques caractre)_ Vous trouverez ici les pilotes pour grer
   votre imprimante parallle, souris bus, souris PS/2 (beaucoup de
   portables utilisent une souris constructeur de type PS/2), quelques
   lecteurs de bande et d'autres priphriques de type "caractre".
   Rpondez en consquence.

   Note : "gpm" est un programme qui vous permet d'utiliser la souris 
   l'extrieur de X Window pour effectuer des oprations de copier-coller
   entre les consoles virtuelles. C'est assez utile si vous avez une
   souris srie, car cela coexiste bien avec X Window, mais vous devrez
   faire quelques trucs pour que cela fonctionne avec les autres.

  Sound

   _(Son)_ Si vous tenez  entendre biff aboyer, rpondez "y", puis
   donnez au programme de configuration tout ce qu'il veut savoir sur
   votre carte son.  propos : lorsqu'il vous demande si vous voulez
   installer la version entire du pilote, vous pouvez rpondre `n' et
   donc conomiser de la mmoire en insrant uniquement les
   caractristiques dont vous avez besoin.

   Si vous vous intressez de prs au support des cartes son, jetez un
   oeil sur les pilotes libres  http://www.linux.org.uk/OSS/ et au Open
   Sound System (commercial)  http://www.opensound.com/.

  Autres options de configuration

   Toutes les options de configuration ne sont pas dtailles dans ce
   document car elles changent trop souvent ou bien sont vraiment
   videntes (par exemple, le support de la carte 3Com 3C509 permet la
   compilation du pilote de cette carte). L'aide en ligne fournit une
   liste assez complte de ces options (plus une manire de les insrer
   dans le script Configure) mise  jour par Axel Boldt
   (boldt@math.ucsb.edu). La liste est dans le fichier
   Documentation/Configure.help des sources du noyau depuis la version
   2.0.

  Kernel hacking

   Extrait du README de Linus :

   La configuration "kernel hacking" provoque gnralement un noyau plus
   gros ou plus lent (ou les deux), et peut mme rendre le noyau moins
   stable en configurant quelques routines pour essayer de chercher les
   dfauts du code, pour trouver les problmes du noyau (kmalloc()).
   Donc, vous devrez rpondre "n"  cette question si vous crez un noyau
   pour un systme sr.

3.4 Garon, la suite ! (Le Makefile)

   Quand la configuration est termine, un message vous indique que le
   noyau est configur, et qu'il faut "regarder le Makefile gnral pour
   des configurations supplmentaires", etc.

   Donc, jetez un coup d'oeil au Makefile. Vous ne changerez probablement
   rien, mais a ne peut pas vous faire de mal ! Vous pourrez galement
   changer les options avec la commande "rdev" quand le noyau sera prt.
   Si vous ne comprenez rien  ce fichier, passez  la suite.

4. Compiler le noyau

4.1 Nettoyer et chercher les dpendances

   Lorsque le script de configuration va se terminer, il vous demandera
   de faire un "make dep" et (peut-tre) "make clean". "make dep" assure
   que toutes les dpendances, comme les fichiers d'en-ttes (include)
   sont en place, et ne prend pas trop de temps  moins que vous n'ayez
   une machine trs lente. Pour les anciennes versions, lorsque c'est
   termin faites un "make clean". Cela dtruit tous les fichiers objets
   et d'autres fichiers que les anciennes versions laissent trainer.
   _N'oubliez pas_ cette tape avant de recompiler un noyau.

4.2 La compilation

   Aprs avoir cherch les dpendances et nettoy l'arborescence, vous
   pouvez lancer la compilation par "make bzImage" ou "make bzdisk"
   (c'est cette partie qui prend du temps). "make bzImage" va compiler le
   noyau, et crer le fichier "bzImage" dans le rpertoire arch/i386/boot
   qui correspond au nouveau noyau compress. "make bzdisk" fait la mme
   chose, mais copie le noyau sur une disquette que vous aurez insre
   dans le lecteur "A:".

   "bzdisk" est assez commode pour tester de nouveaux noyaux ; s'il ne
   fonctionne pas, enlevez juste la disquette et relancez la machine avec
   votre ancien noyau. C'est galement une mthode pratique si vous avez
   dtruit accidentellement votre noyau (ou quelque chose de ce genre).
   Vous pouvez galement vous en servir pour installer de nouveaux
   systmes, en copiant directement le contenu d'un disque sur un autre
   ("tout a ? ouah !").

   Tous les noyaux assez rcents sont compresss, comme l'indique le "bz"
   au dbut des noms. Un noyau compress est automatiquement dcompact
   lors de l'excution.

   Pour les noyaux plus anciens, bzImage n'existait pas et on utilisait
   zImage. Cette possibilit est toujours disponible mais vue la taille
   des noyaux rcents il est  peu prs obligatoire d'utiliser bzImage
   car l'ancienne mthode ne peut grer que des noyaux de taille limite.

4.3 Les autres options du "make"

   "make mrproper" est un "make clean" plus puissant. Cela est parfois
   ncessaire, vous devriez le faire  chaque patch. Il efface galement
   votre fichier de configuration donc il faudra ventuellement en faire
   une copie avant (.config).

   "make oldconfig" essaiera de configurer le noyau  partir d'un vieux
   fichier de configation, il choisira toutes les options de "make
   config" pour vous. Si c'est la premire fois que vous compilez un
   noyau ou si vous n'avez pas un ancien fichier de configuration
   n'utilisez pas ceci, vous devrez sans doute changer la configuration
   par dfaut.

   Regardez la section sur les modules  propos du "make modules".

4.4 Installer le noyau

   Une fois que vous avez un nouveau noyau qui semble fonctionner comme
   vous le voulez, il est grand temps de l'installer. La plupart des gens
   utilisent LILO (LInux LOader). "make zlilo" installera votre noyau,
   lancera LILO, et laissera votre machine prte  rebooter, mais
   SEULEMENT si lilo est configur de la manire suivante : le noyau
   s'appelle /vmlinuz, lilo se trouve dans /sbin, et votre fichier de
   configuration pour LILO (/etc/lilo.conf) correspond  ces donnes.

   Sinon, vous devrez utiliser LILO directement. C'est un produit assez
   facile  installer, mais dont le fichier de configuration peut tre
   droutant. Regardez le fichier de configuration (/etc/lilo/config pour
   les versions les plus anciennes, /etc/lilo.conf pour les rcentes), et
   regardez son contenu. Le fichier de configuration doit ressembler 
   ceci :

    image = /vmlinux
        label = Linux
        root = /dev/hda1
        ...

   La ligne "image =" sert  indiquer le nom du noyau utilis. Beaucoup
   de gens utilisent /vmlinuz. "label" servira  indiquer  LILO sur quel
   noyau ou sur quel systme d'exploitation vous allez booter (nom
   logique), et "root" est la partition racine de ce systme
   d'expoitation. Faites une sauvegarde de votre vieux noyau (quel que
   soit son nom), et copiez le nouveau noyau (bzImage)  sa place : "cp
   bzImage /vmlinuz" si vous utilisez "/vmlinuz", puis relancez lilo. Sur
   les systmes rcents, vous pouvez simplement lancer "lilo", mais sur
   de plus anciens, vous devez faire un /etc/lilo/install ou
   /etc/lilo/lilo -C /etc/lilo/config.

   Si vous dsirez en savoir plus sur la configuration de LILO, ou si
   vous voulez avoir LILO, rcuprez la dernire version sur votre site
   FTP favori et suivez les instructions.

   Pour booter sur l'un de vos anciens noyaux situs sur votre disque dur
   (une autre mthode de secours quand le noyau plante), copiez les
   lignes suivantes "image = xxx"  la fin du fichier de configuration
   LILO, et changez "image = xxx" par "image = yyy", o "yyy" est le
   chemin complet du noyau de secours. Puis changez "label = zzz" en
   "label = linux-sauvegarde" et relancez lilo. Si elle n'y est pas, vous
   devrez rajouter une ligne dans le fichier de configuration indiquant
   "delay=x", o x est le temps en dixime de secondes qui indique  LILO
   le temps qu'il doit attendre avant d'amorcer la machine. Vous pouvez
   l'interrompre (avec la touche shift par exemple), et taper le label de
   l'image du noyau de sauvegarde (au cas o un problme se produit).

5. Mettre  jour le noyau

5.1 Appliquer un patch

   Les nouvelles versions du noyau sont distribues sous la forme de
   patches. Par exemple, si vous possdez la version 1.1.45, et que vous
   remarquez qu'il existe un "patch46.gz", cela signifie que vous pouvez
   passer  la version 1.1.46 en appliquant ce patch. Vous devriez faire
   avant une sauvegarde de votre arborescence des sources du noyau ("make
   clean" puis "cd /usr/src; tar zcf old-tree.tar.gz linux" va produire
   une archive compresse).

   Poursuivons avec cet exemple et supposons que vous ayez mis le fichier
   "patch46.gz" dans /usr/src. Allez dans /usr/src et faites un "zcat
   patch46.gz | patch -p0" (ou "patch -p0 < patch46" si le patch n'est
   pas compress). Vous verrez alors une liste de messages vous indiquant
   les essais de modifications. Cela marche ou pas (en principe oui !).
   Gnralement, cela va trop vite pour lire, et on ne sait pas trop si
   a a march. Vous pouvez utiliser l'option -s de patch qui lui indique
   qu'il ne doit afficher que les erreurs (vous n'avez pas grand chose 
   faire des "hh, mon ordinateur est en train de faire quelque
   chose...!"). Pour vrifier que tout s'est pass sans encombre, allez
   dans /usr/src/linux et cherchez les fichiers ayant pour extension
   .rej. Quelques versions de patch (vieilles versions) utilisent # pour
   les fichiers rejets. Vous pouvez utiliser "find" pour les trouver :
        find .  -name '*.rej' -print

   vous en donnera la liste avec le chemin pour y accder.

   Si tout a march, faites un "make clean", "config," et "dep" comme
   dcrit dans les sections 3 et 4.

   La commande patch possde quelques options. Comme indiqu ci-dessus,
   patch -s supprime tous les messages sauf les erreurs. Si vous stockez
   les sources de votre noyau dans un autre rpertoire que
   /usr/src/linux, un patch -p1 dans ce rpertoire fera les choses
   proprement. Les autres options sont bien documentes dans les pages de
   manuel.

5.2 Si quelque chose ne fonctionne pas

   (Note : cette section traite plutt des noyaux assez anciens)

   Le problme le plus frquent qui se prsentait tait lorsqu'un patch
   modifiait le fichier "config.in" et que vous aviez chang les options
   pour mieux coller  votre machine. En principe, a ne devrait plus
   trop se produire, mais avec les anciennes versions... Pour rsoudre ce
   problme, jetez un coup d'oeil au fichier config.in.rej et regardez
   son contenu. Le changement sera indiqu par "+" et "-" au dbut d'une
   ligne. Regardez ces lignes et retenez si elles sont marques "y" ou
   "n". Maintenant, ditez config.in, et changez les "y" en "n" et les
   "n" en "y" lorsque cela est ncessaire. Faites un
        patch -p0 < config.in.rej

   et si cela fonctionne ("no fails"), alors vous pouvez continuer avec
   la configuration et la compilation. Le fichier config.in.rej restera,
   mais vous pouvez le dtruire.

   Si vous avez d'autres problmes, vous avez peut-tre install un patch
   dfectueux. Si la commande patch indique "previously applied patch
   detected: Assume -R?", vous tes probablement en train d'appliquer un
   patch dj appliqu. Si vous rpondez "y", cela risque de dtruire
   votre source et il vous faudra rcuprer un source complet (vous
   auriez peut-tre d commencer par l).

   Pour revenir en arrire (dpatcher), faites un "patch -R" sur le patch
   original.

   La meilleure chose  faire lorsqu'un patch dtruit tout est de
   repartir d'un noyau initial tout neuf ! (par exemple,  partir du
   fichier linux-x.y.z.tar.gz).

5.3 Comment se dbarasser des fichiers .orig ?

   Aprs avoir appliqu quelques patches, les fichiers .orig vont
   commencer  s'empiler. Par exemple, j'en tais  la version 1.1.51 et
   la dernire fois que j'avais fait le mnage, c'tait avec la version
   1.1.48 (je crois...). Dtruire les fichiers .orig a permis de
   rcuprer plus d'un demi Mga octets.
        find .  -name '*.orig' -exec rm -f {} ';'

   fera cela pour vous. Quelques versions de patch qui utilisent # pour
   les rejets utilisent un tilde  la place de .orig.

   Il y a d'autres manires (meilleures ?) pour se dbarrasser des
   fichiers .orig en utilisant le programme GNU xargs :
        find .  -name '*.orig' | xargs rm

   ou la mthode sre mais un peu plus verbeuse :
        find . -name '*.orig' -print0 | xargs --null rm --

5.4 Autres patches

   Il y a d'autres patches (je les appellerai "non-standards") que ceux
   distribus par Linus. Si vous les appliquez, les patches Linus
   risquent de ne plus marcher correctement et vous serez oblig soit de
   les enlever, soit d'adapter les patches. C'est gnralement un travail
   assez pnible pour les novices, aussi revenir aux anciennes sources
   avant d'appliquer les patches de _Linux_ semble tre une bonne
   solution. Aprs, vous pouvez regarder si les patches non standards
   fonctionnent. S'ils ne fonctionnent pas, vous pouvez revenir 
   l'ancienne version, ou essayer de modifier le patch pour le faire
   fonctionner, ou encore attendre qu'un nouveau patch arrive.

   Vous entendrez probablement parler de ces patches non standards.
   J'utilisais le patch "noblink" car j'ai horreur des curseurs qui
   clignotent (ce patch est (ou bien tait) mis  jour frquemment pour
   les nouveaux noyaux). Les pilotes de priphriques tant de plus
   dvelopps sous la forme de modules chargeables, le nombre de patches
   "non standards" dcrot.

6. Paquetages supplmentaires

   Votre noyau Linux a bon nombre de caractristiques qui ne sont pas
   expliques dans le noyau lui-mme ; elles sont typiquement utilises
   par des paquetages externes. Une liste des plus utiles est donne ici.

6.1 kbd

   La console de Linux possde de nombreuses caractristiques. Elle peut
   changer les polices de caractres, remapper le clavier, permuter les
   modes vidos (dans les noyaux les plus rcents), etc. Le package kbd
   possde des programmes qui permettent  l'utilisateur de faire tout
   cela, plus une tonne de fontes et de types de claviers. (NdT : fr.map
   pour le clavier franais). Il est disponible sur les mmes sites qui
   proposent les sources du noyau.

6.2 util-linux

   Rik Faith (faith@cs.unc.edu) a rassembl une grande quantit d'outils
   Linux dans le paquetage util-linux. Ils est dsormais maintenu par
   Andries Brouwer (util-linux@math.uio.no). Disponible via ftp anonyme
   sur sunsite.unc.edu dans /pub/Linux/system/misc, il contient des
   programmes tels que setterm, rdev, et ctrlaltdel, qui concernent le
   noyau. Comme le dit Rik, _n'installez pas sans rflchir_, vous n'avez
   pas besoin de tout installer dans la distribution, et cela pourrait
   vous causer de graves ennuis.

6.3 hdparm

   Comme beaucoup de paquetages, c'tait au dpart un patch pour le noyau
   et un ensemble de programmes. Le patch a t intgr dans le noyau
   standard et les programmes pour optimiser et jouer avec vos disques
   sont distribus sparment.

6.4 gpm

   gpm est un gestionnaire de souris. Ce programme vous permet
   d'effectuer du couper-coller en mode texte entre les consoles
   virtuelles ainsi que d'autres oprations avec un grand nombre de types
   de souris.

7. Quelques piges

7.1 make clean

   Si votre noyau a un comportement surnaturel (a m'est arriv !), il y
   a des chances pour que vous ayez oubli de faire un "make clean". Les
   symptmes peuvent tre un plantage de votre systme, des problmes
   d'entres-sorties tranges, une chute des performances, des reboot
   alatoires... Vrifiez que vous avez galement fait un make dep.

7.2 Noyaux normes ou lents

   Si votre noyau consomme beaucoup de mmoire, ou s'il est rellement
   gros, ou bien s'il faut une ternit pour le compiler mme lorsque
   vous utilisez votre nouveau 986DX6/440, c'est que vous avez configur
   un tas de choses (pilotes de priphriques, systmes de fichiers) dont
   vous n'avez pas besoin. Si vous ne les utilisez pas, ne les configurez
   pas car cela prend beaucoup de place en mmoire. Le symptme le plus
   visible est l'augmentation sensible du fonctionnement du swap. Si
   votre disque fait beaucoup de bruit, et qu'il ne s'agit pas d'un de
   ces vieux disques Fujitsu Eagles qui font le bruit d'un avion lors de
   son atterrissage lorsque vous l'teignez, jetez un coup d'oeil  votre
   configuration.

   Vous pouvez calculer la taille mmoire que le noyau utilise en prenant
   la mmoire totale de votre machine et en soustrayant la valeur de la
   mmoire totale ("total mem") dans /proc/meminfo ou bien avec la
   commande "free".

7.3 Le port parallle ne fonctionne pas/mon imprimante ne fonctionne pas

   Les options de configuration pour les PC sont : premirement, dans la
   catgorie "General Setup" slectionnez "Parallel port support" et
   "PC-style hardware". Puis dans "Character devices", slectionnez
   "Parallel printer support".

   Il y a ensuite le problme des noms de priphrique des imprimantes
   qui ont chang dans Linux 2.2. Si vous aviez une imprimante lp1 avec
   votre noyau prcdent, elle s'appelle probablement lp0 maintenant.
   Utilisez "dmesg" ou cherchez dans les logs dans /var/log pour le
   vrifier.

7.4 Le noyau ne compile pas

   Si cela ne compile pas, alors un patch a probablement chou, ou bien
   vous possdez des sources corrompus. Votre version de gcc peut
   galement ne pas tre correcte, ou bien endommage (par exemple les
   fichiers d'include peuvent tre faux). Soyez sr que les liens que
   Linus dcrit dans le fichier README sont corrects. En gnral, si un
   noyau standard ne compile pas, c'est qu'un truc ne tourne pas rond
   dans le systme, et il est plus que probable que certains outils
   doivent tre reinstalls.

   Dans des cas relativement rares, gcc peut chouer en raison de
   problmes de matriel. Le message d'erreur ressemble  un truc assez
   mystrieux "xxx exited with signal 15". Je n'en n'aurais probablement
   pas parl si cela ne m'tait arriv une fois. J'avais un cache mmoire
   dfectueux et le compilateur fonctionnait de manire plutt alatoire.
   Essayez dans un premier temps de reinstaller gcc si vous avez des
   problmes. Si votre noyau compile trs bien avec les caches externes
   vids ou une mmoire rduite, alors vous pourrez commencer 
   souponner votre matriel.

   Certaines personnes ont tendance  ne pas aimer que je mette en doute
   leur matriel. Je n'invente rien. Il existe une FAQ ddie  ce sujet
   : http://www.bitwizard.nl/sig11/ (NdT : traduite en franais 
   http://www.linux-france.org/article/sig11-fr/sig11-fr.html).

7.5 La nouvelle version du noyau ne boote plus !

   Soit LILO ne fonctionne pas, soit il n'est pas configur correctement.
   Une fois, un problme dans le fichier de configuration m'a pos pas
   mal de soucis : j'avais mis "boot = /dev/hda1"  la place de "boot =
   /dev/hda" (ce genre d'erreurs n'est pas facile  trouver, mais une
   fois que vous avez un fichier de configuration qui fonctionne, il n'y
   a pas de raison d'y toucher).

7.6 Vous avez oubli de lancer LILO, ou le systme ne boote plus du tout

   Argh ! La meilleure chose  faire est de booter  partir d'une
   disquette et de prparer une nouvelle disquette de boot ("make zdisk"
   fait cela trs bien). Vous avez besoin de savoir o votre partition
   racine (/) se trouve et quel est son type (ext2fs, minix, etc). Dans
   l'exemple ci-dessous, vous aurez galement besoin de connatre la
   partition des sources du noyau (/usr/src/linux), et o elle est
   monte.

   Dans cet exemple,la racine / est /dev/hda1, la partition qui supporte
   /usr/src/linux est /dev/hda3, normalement monte sur /usr. Toutes les
   deux ont un systme de fichiers de type ext2fs. L'image du noyau se
   trouve dans /usr/src/linux/arch/i386/boot/ et elle s'appelle bzImage.

   L'ide est que s'il existe un noyau bzImage qui fonctionne il est
   possible de l'utiliser pour la nouvelle disquette. Une autre
   possibilit qui peut tre meilleure ou pas est prsente aprs cet
   exemple (cela dpend de la faon dont vous avez plant votre systme).

   Commencez par booter  partir d'une disquette d'installation
   (boot/root) ou d'une disquette de secours et montez la partition o se
   trouve le noyau en tat de marche :

        mkdir /mnt
        mount -t ext2 /dev/hda3 /mnt

   Si mkdir vous annonce que le rpertoire existe, ignorez le message.
   Maintenant, allez dans le rpertoire o se trouve le noyau en tat de
   marche. Notez que
/mnt + /usr/src/linux/arch/i386/boot - /usr = /mnt/src/linux/arch/i386/boot

   Insrez une disquette formate dans le lecteur "A:" (vrifiez qu'il ne
   s'agit pas de la disquette boot ou root !), faites une copie de
   l'image sur le disque et configurez votre partition racine :

cd /mnt/src/linux/arch/i386/boot
dd if=bzImage of=/dev/fd0
rdev /dev/fd0 /dev/hda1

   Allez  la racine /, et dmontez la partition /usr :
cd /
umount /mnt

   Maintenant, vous devriez tre capable de rebooter votre systme
   normalement  partir de cette disquette. N'oubliez pas de lancer lilo
   (ou ce que vous aviez oubli) avant de rebooter !

   Comme mentionn ci-dessus, il y a une autre manire trs pratique.
   S'il se trouve que vous avez un noyau oprationnel dans / (/vmlinuz
   par exemple), on peut s'en servir. Supposons que vous remplissiez les
   conditions ci-dessus, et que votre noyau s'appelle /vmlinuz, faites
   comme ci-dessus en changeant /dev/hda3 en /dev/hda1 (la partition /),
   /mnt/src/linux en /mnt, et if=bzImage en if=vmlinuz. La petite note
   expliquant comment aller dans /mnt/src/linux peut tre oublie.

   Utiliser LILO avec de gros disques (avec un nombre de cyclindres
   suprieur  1024) peut poser des problmes. Consultez le mini-Howto
   LILO ou la documentation.

7.7 Il me dit "warning: bdflush not running"

   Cela peut tre un problme assez grave. Avec les noyaux ayant une
   version suprieure  1.0 (aux alentours du 20 avril 1994), le
   programme "update" qui vide priodiquement les tampons disque a t
   remplac par "bdflush". Rcuprez les sources de "bdflush" (vous
   pouvez les rcuprer l o vous avez trouv votre noyau), et
   compilez-le (il vaut mieux fonctionner avec un ancien noyau pendant la
   compilation et pendant l'installation). Il s'installera tout seul
   comme "update" et le nouveau noyau devrait ensuite fonctionner
   correctement.

7.8 Je n'arrive pas  faire marcher mon CD-ROM IDE/ATAPI

   Aussi trange que cela puisse paratre, beaucoup de gens n'arrivent
   pas  faire fonctionner leurs disques ATAPI, tout simplement parce
   qu'il y a un bon nombre de problmes potentiels.

   Si votre CD-ROM est le seul disque d'une interface IDE particulire il
   doit tre configur en "matre (master)" ou "seul (single)". C'est
   l'erreur la plus frquemment rencontre.

   Creative Labs (par exemple) a mis des interfaces IDE sur ses cartes
   sons. Toutefois, cela pose un problme pour les gens qui ont dj deux
   interfaces IDE sur leur carte mre (IRQ15 gnralement). Une pratique
   commune est de faire de l'interface soundblaster un troisime port IDE
   (IRQ11 je pense).

   Cela pose un problme avec Linux car les versions 1.2.x ne supportent
   pas une troisime interface IDE (cela est gr avec les versions 1.3.x
   mais ce sont des versions de dveloppement, et la troisime interface
   n'est pas dtecte automatiquement). Pour rsoudre ce problme, vous
   avez plusieurs possibilits.

   Si avez dj un deuxime port IDE, il y a des chances pour que vous ne
   l'utilisiez pas ou qu'il n'ait pas deux priphriques connects.
   Dsactivez l'interface ATAPI de la carte son (vous conomisez un IRQ)
   et connectez le disque sur votre seconde interface.

   Si vous n'avez pas une seconde interface, mettez interface IDE (pas la
   partie son) de la carte son sur l'IRQ 15. Cela devrait fonctionner.

7.9 Le noyau me dit des insanits  propos de requtes obsoltes !

   Rcuprez des versions rcentes du progamme route et de tous les
   autres programmes manipulant les routes : /usr/include/linux/route.h
   (qui est en fait un fichier dans /usr/src/linux) a chang.

7.10 Le Firewall ne fonctionne pas dans la version 1.2.0

   Passez  la version 1.2.1.

7.11 Ce n'est pas une image noyau compresse !

   N'utilisez pas le fichier vmlinux cr dans /usr/src/linux comme image
   de boot mais [..]/arch/i386/boot/bzImage.

7.12 Problmes avec la console aprs mise  jour  la version 1.3.x

   Changez le mot dumb en linux dans l'entre console du fichier
   /etc/termcap. Il faudra peut-tre aussi ajouter une entre terminfo.

7.13 Le noyau ne semble pas pouvoir compiler aprs une mise  jour

   Le source du noyau contient un certain nombre de fichiers d'en-ttes
   (les fichiers se terminant par .h) qui se trouvent dans le rpertoire
   /usr/include. Ils sont rfrencs ainsi (o xyzzy.h doit tre dans
   /usr/include/linux) :
    #include <linux/xyzzy.h>

   Normalement, il y a un lien appel linux dans /usr/include sur le
   rpertoire include/linux de la racine des sources du noyau
   (/usr/src/linux/include/linux dans un systme standard). Si ce lien
   n'existe pas, ou bien pointe au mauvais endroit, bon nombre de
   programmes ne compileront pas. Si vous dcidez que les sources du
   noyau prennent trop de place sur votre disque et que vous les
   dtruisez, cela sera un problme. Un autre problme qui peut arriver,
   c'est avec les permissions d'accs aux fichiers. Si votre root a un
   umask qui n'autorise pas les autres utilisateurs  voir ses fichiers
   par dfaut, et que vous dsarchiviez les sources du noyau sans
   l'option p (conserve le mode), les utilisateurs ne pourront pas
   utiliser le compilateur C. Vous pouvez alors utiliser la commande
   chmod pour rsoudre le problme mais il est probablement plus facile
   de rinstaller les fichiers include. Vous pouvez procder de la mme
   manire que lors de l'installation des sources au dbut, en ajoutant
   un argument pour n'extraire que les includes :
    blah# tar zxvpf linux.x.y.z.tar.gz linux/include

   Notez que "make config" va recrer le lien /usr/src/linux s'il
   n'existe pas.

7.14 Augmenter les limites

   Ces quelques _exemples_ de commandes peuvent tre assez utiles  ceux
   qui se demandent comment augmenter certaines limites logicielles
   imposes par le noyau :
 echo 4096 > /proc/sys/kernel/file-max
 echo 12288 > /proc/sys/kernel/inode-max
 echo 300 400 500 > /proc/sys/vm/freepages

8. Note concernant la mise  jour pour les noyaux 2.0.x, 2.2.x

   Les noyaux 2.0.x et 2.2.x ont introduit pas mal de modifications dans
   l'installation du noyau. Le fichier Documentation/Changes situ dans
   l'arborescence des sources 2.0.x contient des informations que vous
   devez connatre lorsque vous effectuez la mise  jour de votre
   systme. Il est fort probable que vous deviez mettre  jour plusieurs
   paquetages tels que gcc, libc et SysVInit ainsi que quelques fichiers
   systmes. Mais ne paniquez pas !

9. Modules

   Les modules chargeables du noyau peuvent faire conomiser de la
   mmoire et faciliter la configuration. L'utilisation des modules s'est
   accrue jusqu' inclure les systmes de fichiers, les pilotes de cartes
   ethernet, de lecteurs de cartouches, d'imprimantes, etc.

9.1 Installer les utilitaires pour grer les modules

   Ces utilitaires sont disponibles sur n'importe quel site o vous avez
   rcupr les sources du noyau : modutils-x.y.z.tar.gz; choisissez la
   dernire version x.y.z qui est gale ou infrieure  votre version du
   noyau. Installez-le avec `tar zxvf modutils-x.y.z.tar.gz', cd dans le
   rpertoire cr (modutils-x.y.z), regardez le fichier README, et
   suivez les instructions d'installation (qui sont en gnral trs
   simples, du genre, faites make install). Vous devriez avoir maintenant
   les programmes insmod, rmmod, ksyms, lsmod, genksyms, modprobe, et
   depmod dans /sbin. Vous pouvez les tester avec le pilote exemple "hw"
   dans insmod ; regardez le fichier INSTALL dans ce sous-rpertoire pour
   les dtails.

   insmod insre un module dans le noyau en cours d'excution. Les
   modules ont gnralement une extension .o. Le pilote exemple est
   appel drv_hello.o, donc, pour l'insrer, insmod drv_hello.o'. Pour
   voir les modules que le noyau utilise actuellement, lancer lsmod. Il
   devrait alors afficher :
blah# lsmod
Module:        #pages:  Used by:
drv_hello          1

   `drv_hello' est le nom du module, il utilise une page mmoire (4ko),
   et aucun autre module du noyau ne dpend actuellement de lui. Pour le
   retirer, lancez `rmmod drv_hello'. Notez que rmmod prend comme
   argument _le nom du module,_ (celui donn par lsmod) pas un nom de
   fichier. Les autres programmes de gestion des modules sont documents
   (pages de manuel).

9.2 Modules distribus avec le noyau

   Avec la version 2.0.30, presque tout est disponible sous forme de
   modules chargeables. Pour les utiliser, soyez sr que vous ne les
   insrez pas dans la configuration du noyau. Pour cela, ne rpondez pas
   y pendant le `make config'.

   Compilez un nouveau noyau et bootez avec. Puis, cd dans /usr/src/linux
    nouveau, et faites un `make modules'. Cela va compiler tous les
   modules que vous n'avez pas spcifis dans le noyau et installer les
   liens dans /usr/src/linux/modules. Vous pouvez alors les utiliser
   depuis ce rpertoire ou faire `make modules_install' qui les
   installera dans /lib/modules/x.y.z, ou x.y.z est le numro de version
   du noyau.

   Cela peut tre particulirement utile pour les systmes de fichiers.
   Vous n'utilisez peut-tre pas frquemment les systmes de fichiers
   minix ou msdos. Par exemple, si je rencontre une disquette msdos
   (beuh), je devrai faire un insmod /usr/src/linux/modules/msdos.o, puis
   rmmod msdos lorsque j'aurai termin, Cette faon de procder conomise
   prs de 50 ko de RAM dans l'utilisation du noyau. Remarque sur le
   systme de fichiers minix : il est trs fortement conseill de
   _toujours_ le configurer directement dans le noyau pour l'utilisation
   en disques de secours.

10. Trucs et astuces

10.1 Rediriger la sortie standard des commandes make ou patch

   Si vous voulez voir ce que font les commandes "make" ou "patch", vous
   pouvez rediriger les messages. Regardez d'abord quel shell vous
   utilisez. "grep root /etc/passwd" et cherchez quelque chose comme
   "/bin/csh".

   Si vous utilisez sh ou bash,
        (commande) 2>&1 | tee  (Fichier de sortie)

   placera une copie de la sortie dans le fichier (Fichier de sortie).

   Pour csh ou tcsh, la syntaxe est :
(commande) |& tee (Fichier de sortie).

   Pour rc (note : vous n'utilisez probablement pas rc) c'est :
        (commande) > [2=1]| tee (Fichier de sortie).

10.2 Installations diverses du noyau

   En plus des disquettes, d'autres mthodes existent pour tester un
   nouveau noyau sans dtruire les prcdents.  la diffrence d'autres
   systmes Unix, LILO est capable de booter sur un noyau situ n'importe
   o sur le disque (si vous avez un gros disque (500 Mo ou plus) lisez
   la documentation de LILO car cela risque de poser quelques problmes).
   Donc, ajoutez cela :
    image = /usr/src/linux/arch/i386/boot/bzImage
    label = nouveau_noyau

    la fin de votre fichier de configuration LILO, vous pouvez alors
   choisir de booter sur le nouveau noyau sans avoir  dtruire l'ancien
   /vmlinuz (aprs avoir lanc lilo, bien sr). La manire la plus simple
   d'indiquer  LILO qu'il doit booter sur un nouveau noyau est de
   presser la touche shift au boot (lorsqu'il vous indique LILO) ce qui
   vous donne un prompt.  ce moment, tapez `nouveau_noyau' pour qu'il
   boote sur le nouveau noyau.

   Si vous dsirez conserver plusieurs sources du noyau (cela peut
   prendre _beaucoup_ de place ; faites attention), la manire la plus
   simple est de le nommer : /usr/src/linux-x.y.z, ou x.y.z est la
   version du noyau. Vous pouvez alors choisir le source  utiliser en
   faisant un lien symbolique ; par exemple, `ln -sf linux-1.2.2
   /usr/src/linux' indiquera la version 1.2.2 comme version courante.
   Avant de crer ce type de lien symbolique, soyez certain que le
   dernier argument de ln n'est pas un rpertoire existant. Le rsultat
   ne serait pas celui que vous espriez.

10.3 Mises  jour des noyaux

   Russell Nelson (nelson@crynwr.com) fait des rsums des changements
   dans les nouvelles versions du noyau. Ils sont courts et vous devriez
   les regarder avant de raliser la mise  jour. Ils sont disponibles
   par ftp anonyme  ftp.emlist.com dans pub/kchanges ou via WEB
   http://www.crynwr.com/kchanges.

11. D'autres HOWTO qui peuvent tre utiles

     * Sound-HOWTO : cartes sons et utilitaires
     * SCSI-HOWTO : tout sur les contrleurs et priphriques SCSI
     * NET-2-HOWTO : rseaux
     * PPP-HOWTO : rseau avec PPP
     * PCMCIA-HOWTO :  propos des pilotes pour votre portable
     * ELF-HOWTO : ELF : qu'est-ce que c'est, installation, etc
     * Hardware-HOWTO : survol du matriel support
     * Module mini-HOWTO : plus de dtails sur les modules du noyau
     * Kerneld mini-HOWTO : ddi  kerneld
     * BogoMips mini-HOWTO : pour information

12. Divers

12.1 Auteur

   L'auteur du Kernel-HOWTO Linux est Brian Ward (bri@cs.uchicago.edu).
   S'il vous plat, envoyez-moi des commentaires, corrections, rajouts.
   Les corrections sont en particulier trs importantes.

   Vous pouvez jeter un coup d'oeil  ma page web ici ou l.

   Bien que j'essaye d'tre attentif  mon courrier, rappelez-vous que
   j'en ai _beaucoup_ tous les jours, donc a peut prendre un petit peu
   de temps pour vous rpondre. Si le mail est une question, essayez
   d'tre le plus clair et dtaill possible. Si vous m'crivez  propos
   de matriel qui ne fonctionne pas (ou quelques chose du genre), j'ai
   besoin de savoir quelle est votre configuration matrielle. Si vous
   reportez une erreur, ne vous limitez pas  "J'ai essay ceci et a n'a
   pas march", j'ai besoin de savoir quelle tait l'erreur, et quelles
   versions du noyau, de gcc et de la libc vous utilisez. Me donner le
   nom de la distribution n'est pas suffisant. Ne craignez pas de poser
   des questions simples, si vous ne demandez pas vous n'aurez pas de
   rponse ! Merci  tous ceux qui m'ont envoy des commentaires.

   Si votre question ne concerne pas le noyau ou est crite dans un
   langage que je ne comprends pas, il se peut que je ne rponde pas.

   Si vous m'crivez et que vous n'obtenez aucune rponse dans un temps
   raisonable (trois semaines ou plus), il y a des chances que j'ai
   accidentellement dtruit votre message (dsol). Rssayez.

   J'ai beaucoup de mail sur des problmes et questions de matriel. Ce
   n'est pas un problme mais merci de noter que que je ne suis pas
   familier avec tout le matriel du monde. J'utilise des processeurs
   AMD, des controlleurs SCSI Adaptec et Symbios et des disques SCSI IBM.

   La version 0.1 de ce document a t crite le 3 octobre 1994. Il est
   disponible aux formats SGML, PostScript, TeX, roff et texte.

12.2 Reste  faire

   Le paragraphe "Trucs et astuces" est un peu court. J'espre l'toffer
   avec les suggestions venant d'autres personnes. De mme pour "Autres
   paquetages". Des informations supplmentaires pour le
   dbogage/sauvetage lors de crash seraient les bienvenues.

12.3 Contributions

   Une petite partie du README de Linus (cf. option kernel hacking ) est
   incluse. (Merci, Linus !)
     * uc@brian.lunetix.de (Ulrich Callmeier) : patch -s et xargs.
     * quinlan@yggdrasil.com (Daniel Quinlan) : corrections et
       complments dans un bon nombre de paragraphes.
     * nat@nataa.frmug.eu.org (Nat Makarvitch) : mrproper, tar -p, et
       plein d'autres choses
     * boldt@math.ucsb.edu (Axel Boldt) : a rassembl les descriptions
       des options de configuration du noyau et m'a fourni la liste
     * lembark@wrkhors.psyber.com (Steve Lembark) : suggestion pour le
       boot multiple.
     * kbriggs@earwax.pd.uwa.edu.au (Keith Briggs) : quelques corrections
       et suggestions
     * rmcguire@freenet.columbus.oh.us (Ryan McGuire): ajouts au niveau
       des options de compilation
     * Eric.Dumas@freenix.fr (Eric Dumas) : traduction franaise
     * simazaki@ab11.yamanashi.ac.jp (Yasutada Shimazaki): traduction
       japonaise
     * jjamor@lml.ls.fi.upm.es (Juan Jose Amor Iglesias): traduction
       espagnole
     * mva@sbbs.se (Martin Wahlen) : traduction sudoise
     * jzp1218@stud.u-szeged.hu (Zoltan Vamosi) : traduction hongroise
     * bart@mat.uni.torun.pl (Bartosz Maruszewski) : traduction polonaise
     * donahue@tiber.nist.gov (Michael J Donahue) : typos, gagnant de la
       "comptition du pain en tranches"
     * rms@gnu.ai.mit.edu (Richard Stallman) : notice de
       distribution/concept de documentation libre
     * dak@Pool.Informatik.RWTH-Aachen.DE (David Kastrup) : NFS
     * esr@snark.thyrsus.com (Eric Raymond) : quelques trucs et astuces

   Tous ceux qui m'ont envoy des mails avec des questions et des
   problmes ont galement t d'une aide prcieuse.

12.4 Copyright, traduction, licence et autres

   Copyright  Brian Ward, 1994-1999.

   Version franaise Copyright  Eric Dumas, 1995-1997 dumas@freenix.fr
    Christophe Deleuze, 1999

   Permission is granted to make and distribute copies of this manual
   provided the copyright notice and this permission notice are preserved
   on all copies.

   Permission is granted to copy and distribute modified versions of this
   manual under the conditions for verbatim copying, provided that the
   derived work is distributed under the terms of a permission notice
   identical to this one. Translations fall under the category of
   ``modified versions.''

   _(Vous avez le droit de faire et de distribuer des copies de ce
   document  condition que l'avis de copyright et cet avis de permission
   soient prservs sur toutes les copies. Vous pouvez copier et
   distribuer des versions modifies sous les mmes conditions pourvu que
   le travail driv soit distribu sous un avis de permission identique
    celui-ci. Les traductions sont des "versions modifies")._

   Garantie : aucune.

   Cette version franaise peut tre trouve sur ftp.lip6.fr dans le
   rpertoire /pub/linux/french/HOWTO.

   La distribution commerciale est autorise et encourage ; toutefois il
   est fortement recommand de contacter l'auteur avant la
   redistribution, dans l'intrt de la mise  jour des donnes (vous
   pourriez aussi m'envoyer un exemplaire de ce que vous faites). Idem
   pour les versions traduites, contactez le traducteur. Il est conseill
   aux traducteurs de contacter l'auteur avant de commencer la
   traduction. La version imprime est bien plus belle. Recyclez.
