1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- original version: 40980 -->
<sect1 id="kernel-baking"><title>Compiler un nouveau noyau</title>
<para>
Pourquoi vouloir compiler un nouveau noyau ?
Ce n'est en gnral pas ncessaire, car le noyau par dfaut de
Debian reconnat la plupart des configurations. En outre diffrents noyaux sont
disponibles. Vous devriez chercher s'il n'existe pas de paquet contenant un noyau
qui corresponde votre matriel. Cependant, il peut tre
utile de compiler un nouveau noyau dans les cas suivants :
<itemizedlist>
<listitem><para>
grer des priphriques spciaux, ou des conflits de priphriques dans
les noyaux par dfaut ;
</para></listitem>
<listitem><para>
activer des options qui ne sont pas incluses dans le noyau par dfaut,
permettre la gestion de la mmoire haute par exemple ;
</para></listitem>
<listitem><para>
optimiser le noyau en enlevant les pilotes inutiles, ce qui peut
acclrer le dmarrage de la machine ;
</para></listitem>
<listitem><para>
crer un noyau monolithique la place d'un noyau modulaire ;
</para></listitem>
<listitem><para>
utiliser une version de dveloppement du noyau ;
</para></listitem>
<listitem><para>
mieux connatre le noyau Linux.
</para></listitem>
</itemizedlist>
</para>
<sect2><title>Gestion des images du noyau</title>
<para>
N'ayez pas peur de compiler un nouveau noyau. C'est amusant et trs instructif.
</para><para>
Pour compiler un noyau <emphasis>faon Debian</emphasis>, vous avez besoin des
paquets suivants :
<classname>fakeroot</classname>, <classname>kernel-package</classname>,
<classname>linux-source-2.6</classname>
et quelques autres qui sont probablement dj installs sur votre machine
(pour la liste complte, voyez
<filename>/usr/share/doc/kernel-package/README.gz</filename>).
</para><para>
Cette mthode cre un .deb partir des sources du noyau ; si
vous utilisez des modules non standard, elle incorpore aussi ces dpendances
dans le .deb. C'est une bonne solution pour grer les images du noyau ;
le rpertoire <filename>/boot</filename> contiendra le noyau, le fichier
<filename>System.map</filename>
et une sauvegarde du fichier de configuration utilis pour ce paquet.
</para><para>
Il faut remarquer qu'il n'est pas <emphasis>obligatoire</emphasis> de
compiler votre noyau <emphasis>faon Debian</emphasis> mais vous vous rendrez compte
qu'utiliser le systme de gestion des paquets pour
grer les noyaux rend leur installation plus simple et plus sre.
De mme, vous pouvez simplement tlcharger les sources telles qu'elles sont
proposes par Linus et non pas
<classname>linux-source-2.6</classname>,
tout en utilisant la mthode de compilation <classname>kernel-package</classname>.
</para><para>
Notez que vous trouverez une documentation complte sur l'utilisation de
<classname>kernel-package</classname> dans le rpertoire
<filename>/usr/share/doc/kernel-package</filename>. Cette section ne
contient qu'un bref didacticiel.
</para>
<para>
Dans ce qui suit, nous supposerons que vous pouvez tout faire sur votre
machine et que vous allez extraire les sources du noyau dans votre rpertoire
personnel <footnote>
<para> D'autres endroits sont possibles pour extraire les sources et construire
le noyau, mais c'est le plus facile car aucun droit spcial n'est demand.
</para></footnote>.
Nous supposerons aussi que la version du noyau est &kernelversion;. Allez
dans le rpertoire o vous voulez dsarchiver
les sources et dsarchivez-les avec
<userinput>tar xjf /usr/src/linux-source-&kernelversion;.tar.bz2</userinput>,
et dplacez-vous dans le rpertoire
<filename>linux-source-&kernelversion;</filename> qui vient d'tre cr.
</para><para>
Maintenant, vous pouvez configurer votre noyau. Excutez
<userinput>make xconfig</userinput> si X11 est install, configur et lanc.
Excutez <userinput>make menuconfig</userinput> dans le cas contraire
(vous aurez alors besoin du paquet <classname>libncurses5-dev</classname>).
Prenez le temps
de lire l'aide en ligne et de choisir judicieusement les options activer.
En cas de doute, il est souvent prfrable d'inclure les pilotes de
priphriques (tels que les contrleurs SCSI, cartes Ethernet, etc.) que vous
ne connaissez pas bien.
Faites attention : les autres options, non spcifiques au matriel,
doivent tre laisses leur valeur par dfaut si vous ne les comprenez pas.
N'oubliez pas de slectionner Kernel module loader dans la
section Loadable module support
(elle n'est pas slectionne par dfaut), sinon votre systme Debian risque
d'avoir des problmes.
</para><para>
Nettoyez l'arborescence des sources et rinitialisez les paramtres
de <classname>kernel-package</classname>. Pour ce faire, tapez
<userinput>make-kpkg clean</userinput>.
</para><para>
Maintenant, compilez votre noyau :
<userinput>fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image</userinput>.
Bien sr, le numro de version 1.0 peut tre chang ;
il s'agit juste d'un moyen de suivre vos diffrentes
versions du noyau. De la mme faon, vous pouvez remplacer le mot
<quote>custom</quote> par ce que vous voulez (par exemple le nom d'une
machine). La compilation d'un noyau peut tre plus ou moins longue, selon la puissance
de votre machine.
</para><para>
Une fois la compilation termine, vous pouvez installer votre noyau
personnalis comme n'importe quel autre paquet. En tant que superutilisateur,
excutez la commande
<userinput>dpkg -i
../linux-image-&kernelversion;-<replaceable>sous-architecture</replaceable>_custom.1.0_&architecture;.deb</userinput>.
La partie <replaceable>sous-architecture</replaceable> est une
sous-architecture optionnelle,
<phrase arch="x86"> telle que <quote>686</quote>, </phrase>
suivant les options de compilation que vous avez dfinies.
<userinput>dpkg -i</userinput> installera votre noyau ainsi
que les autres fichiers qui lui seront ncessaires.
Par exemple, le fichier <filename>System.map</filename> sera install
correctement (trs utile pour le dbogage des problmes de noyau) et un
fichier <filename>/boot/config-&kernelversion;</filename> sera install, qui
contiendra votre configuration noyau.
Le nouveau paquet est assez volu pour utiliser automatiquement le programme d'amorage de
votre plateforme et mettre jour l'information sur l'image de noyau utilise.
Si vous avez cr un paquet pour les modules, vous devrez installer ce paquet galement.
</para><para>
Vous devez maintenant redmarrer votre systme : lisez attentivement les
ventuels avertissements produits par les tapes prcdentes, puis excutez
<userinput>shutdown -r now</userinput>.
</para><para>
D'autres informations sur la compilation des noyaux Debian
se trouvent dans le
<ulink url="&url-kernel-handbook;"><quote>Debian Linux Kernel Handbook</quote></ulink>.
Pour plus d'informations sur <classname>kernel-package</classname>, lisez
la documentation dans <filename>/usr/share/doc/kernel-package</filename>.
</para>
</sect2>
</sect1>
|