Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:kernel:compiler [08/05/2017 21:11] naguam [Étape 8 Contemplation] |
doc:systeme:kernel:compiler [08/05/2017 21:22] naguam [Étape 6 Compilation] |
||
---|---|---|---|
Ligne 133: | Ligne 133: | ||
* **Avec les kernel récents**, sûrement au-dessus de la v4.x, il va chercher automatiquement le .config dans /boot/config-''votreKernelActuellementActifOuPrecedant'' et crée le .config. | * **Avec les kernel récents**, sûrement au-dessus de la v4.x, il va chercher automatiquement le .config dans /boot/config-''votreKernelActuellementActifOuPrecedant'' et crée le .config. | ||
| | ||
- | <note>Pour les kernels plus anciens, il faudra peut-être copier la configuration de votre kernel actuel sous forme de .config</note> | + | <note>Pour les kernels plus anciens, il faudra peut-être copier la configuration de votre kernel actuel sous forme de .config |
- | <code user>cp /boot/config-votreKernelActuellementActifOuPrecedant .config</code> | + | <code user>cp /boot/config-votreKernelActuellementActifOuPrecedant .config</code></note> |
Puis faire une des trois commandes suivantes **au choix** : | Puis faire une des trois commandes suivantes **au choix** : | ||
Ligne 146: | Ligne 146: | ||
Ou encore : | Ou encore : | ||
<code user>make oldconfig</code> | <code user>make oldconfig</code> | ||
- | * Cette commande vous demandera de valider les nouvelles options (ajoutées dans le nouveau kernel) par ''Y'' ou par ''N'' ou/et d'autres options encore. | + | * Cette commande vous demandera de valider les nouvelles options (ajoutées dans le nouveau kernel) par ''Y'' ou par ''N'' ou|et d'autres options encore. |
<note tip>Si vous avez un doute, appuyez sur la touche ''entrée''.</note> | <note tip>Si vous avez un doute, appuyez sur la touche ''entrée''.</note> | ||
- | |||
- | On peut aussi partir de Zéro, en fouillant dans la doc et les architectures proposées, mais là faut aimer jouer ;) | ||
=== Annexe optionnelle === | === Annexe optionnelle === | ||
Ligne 165: | Ligne 163: | ||
Remarque: à partir du noyau 4.10, la doc intéressante est déplacée, mais c'est indiqué dans le ''README'' | Remarque: à partir du noyau 4.10, la doc intéressante est déplacée, mais c'est indiqué dans le ''README'' | ||
- | ==== 5.2 désactiver les clés du kernel ==== | + | ==== 5.2 Désactiver les clés du kernel ==== |
Obligatoire pour éviter erreur de compilation et éventuellement utiliser ses clés propres | Obligatoire pour éviter erreur de compilation et éventuellement utiliser ses clés propres | ||
Ligne 183: | Ligne 181: | ||
Nous allons maintenant pouvoir nous mettre à compiler ! \\ | Nous allons maintenant pouvoir nous mettre à compiler ! \\ | ||
Selon la manière que je vais vous présenter : | Selon la manière que je vais vous présenter : | ||
- | - il créera les packages pour ensuite | + | * il créera les packages |
- | - installer le kernel. | + | |
<code user>fakeroot make deb-pkg -jX LOCALVERSION=-nomanecdotique KDEB_PKGVERSION=$(make kernelversion)-1</code> | <code user>fakeroot make deb-pkg -jX LOCALVERSION=-nomanecdotique KDEB_PKGVERSION=$(make kernelversion)-1</code> | ||
Ligne 196: | Ligne 194: | ||
ce n'est pas obligatoire, mais cela permet d'augmenter la vitesse de compilation, le processeur travaillant en entier sur tout ses cores avec tout ses threads avec cette option. | ce n'est pas obligatoire, mais cela permet d'augmenter la vitesse de compilation, le processeur travaillant en entier sur tout ses cores avec tout ses threads avec cette option. | ||
* **LOCALVERSION=-$(dpkg --print-architecture)**, optionnel, sert à nommer son kernel, au plus près du nommage Debian \\ | * **LOCALVERSION=-$(dpkg --print-architecture)**, optionnel, sert à nommer son kernel, au plus près du nommage Debian \\ | ||
- | vous pouvez utiliser aussi ''nomanecdotique'', mais sans lettres majuscules car sinon à la fin, lors de la construction du paquet, cela fera une belle erreur ''caractère non autorisé = la(les) lettres en majuscule''. | + | vous pouvez utiliser aussi ''nomanecdotique'', mais sans lettre(s) majuscule(s) car sinon à la fin, lors de la construction du paquet, cela fera une belle erreur ''caractère non autorisé = la(les) lettre(s) en majuscule(s)''. |
* **KDEB_PKGVERSION=$(make kernelversion)-1**, optionnel, donne une versions aux paquets construits à la fin. | * **KDEB_PKGVERSION=$(make kernelversion)-1**, optionnel, donne une versions aux paquets construits à la fin. | ||
Ligne 223: | Ligne 221: | ||
Les fichiers se terminant par ''.deb'' sont les paquets installables directement, les autres sont les nouvelles sources, les modifications apportées enregistrées dans le ''.change'' et la signature des clefs. | Les fichiers se terminant par ''.deb'' sont les paquets installables directement, les autres sont les nouvelles sources, les modifications apportées enregistrées dans le ''.change'' et la signature des clefs. | ||
- | ===== Étape 9 Installation et/ou déinstallation du kernel ===== | + | ===== Étape 8 Installation et/ou déinstallation du kernel ===== |
Pour installer le kernel, nous devons au minimum installer l'image et les headers mais je conseille d'installer tout les .deb si vous ne manquez pas d'espace de stockage. | Pour installer le kernel, nous devons au minimum installer l'image et les headers mais je conseille d'installer tout les .deb si vous ne manquez pas d'espace de stockage. | ||
Ligne 234: | Ligne 232: | ||
__Vous pouver aussi déinstaller avec apt.__ | __Vous pouver aussi déinstaller avec apt.__ | ||
- | + | ==== Avertissement ==== | |
- | <note>__Dans ''/etc/kernel/postinst.d/apt-auto-removal'' :__''\\ | + | __Dans ''/etc/kernel/postinst.d/apt-auto-removal'' :__''\\ |
// # Mark as not-for-autoremoval those kernel packages that are://\\ | // # Mark as not-for-autoremoval those kernel packages that are://\\ | ||
// # - the currently booted version//\\ | // # - the currently booted version//\\ | ||
Ligne 257: | Ligne 255: | ||
<code root>mv /etc/kernel/postinst.d/apt-auto-removal /etc/kernel/postinst.d/apt-auto-removal.bak | <code root>mv /etc/kernel/postinst.d/apt-auto-removal /etc/kernel/postinst.d/apt-auto-removal.bak | ||
ln -s /dev/null /etc/kernel/postinst.d/apt-auto-removal</code> | ln -s /dev/null /etc/kernel/postinst.d/apt-auto-removal</code> | ||
- | </note> | + | |
===== Conclusion et Sources ===== | ===== Conclusion et Sources ===== | ||