Tom's Guide > Forum > Systèmes d'exploitation (Windows, Mac OS, Linux...) > [Tuto] Compiler son Kernel sous Ubuntu !

[Tuto] Compiler son Kernel sous Ubuntu !

Forum Systèmes d'exploitation (Windows, Mac OS, Linux...) : [Tuto] Compiler son Kernel sous Ubuntu !

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

N'ayant pas trouvé de bon tuto récent, et en Français sur la recompilation d'un noyau sous Ubuntu, j'ai décider d'en creer un basé sur plusieurs sites Anglophone.

*Attention, avant toutes choses munissez vous de la liste COMPLÈTE du matos de votre PC.

À quoi ça sert de recompiler son Kernel ?
Recompiler son Kernel a plusieurs avantages:
*Enlever les modules dont vous n'avez pas besoin pour décharger le système, afin de le rendre plus performant.

*Savoir EXACTEMMENT quel modules sont installés sur votre Linux.

*Appliquer des patchs si besoin.

Compiler son Kernel, c'est dur ?
Oh oui, si vous n'avez pas un diplôme d'ingenieur informatique laissez tomber !
Meuuuh non, c'est très simple, à condition de savoir de quels modules nous avons besoin, et des quels nous n'avons pas besoin.

Compiler son Kernel, c'est long ?
La durée varie, la compilation est longue justement, au moment de la compilation ^^

Bon tu vas m'éxpliquer comment faire ou pas ?
Nous y sommes, voilà les étapes:

Passer en root:
Si vous n'avez pas envie de taper sudo à chaque fois, tapez:

Code :
  1. sudo su

pour vous logguer en root.

Installation des outils nécessaires à la compilation, et au telechargement du Kernel.

Code :
  1. apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential



On se déplace dans le répertoire des sources que l'on va téléchargées.

Code :
  1. cd /usr/src



Téléchargement, extraction des sources du kernel, et création du lien symbolique.

Code :
  1. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  2. tar xjf linux-2.6.20.tar.bz2
  3. ln -s linux-2.6.20.tar.bz2
  4. cd /usr/src/linux




Alors là, on s'attaque au plus gros morceaux, le choix des options/modules.
Sur ce morceau je ne peut vous aider, puisque c'est à configurer selon votre materiel.
Voici la commande à taper afin d'afficher le menu de config.

Code :
  1. make menuconfig


Naviguer dans le menu avec Tab, les flèches et "Espace" pour cocher
Une fois que vous avez tout configurer, revenez au début du menu, et aller sur Exit.
L'installeur vous demandera alors de sauver la nouvelle config du noyau, repondez "Yes".

Compiler le kernel.
Déjà, faites un

Code :
  1. make-kpkg clean

pour nettoyer tout ça, ensuite

Code :
  1. fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers

pour commencer la compil.

À partir de là, vous pouvez attendre une bonne heure (selon la vitesse de votre proco).

Installation du nouveau noyau.
Tapez

Code :
  1. cd /usr/src

afin de vous assurez d'être dans le bon repertoire.
Ensuite

Code :
  1. ls

.
Vous devriez voir apparaitre 2 paquets en .deb.
Si c'est le cas, suffit de faire

Code :
  1. dpkg -i le_nom_du_premier_paquet le_nom_du_deuxième_paquet


Vous attendez que l'install des deux paquets ce termine, normalement l'update de grub ce fait toute seule, vous rebootez et au boot quand le décompte grub se lance, appuyez sur "Esc" pour booter sur votre Kernel.

Problèmes...
*J'ai booter sur la nouvelle version de mon kernel, et la barre de chargement ne défile pas...
Vous avez surement du faire une erreur en choisissant les options ou modules, verifier votre config.

*Si votre kernel ne marche pas, au moment du grub, appuyez sur "Esc" et choissisez votre ancien Kernel.

------------------------------ VieDeGeek || Hinsolite
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Le premier à poster après le tuto! :d
Bon, sans faire un long discours, je dirai tout simplement que c'est un très bon tuto qui servirai à pas mal de personnes comme on utilise largement Ubuntu.
Félicitations Moi123! ;)

------------------------------ Quelle est la différence entre Windows Vista et un virus?
->Un virus marche correctement.
Faîtes votre devoir, signez la pétition!
Répondre à cracker

Pour la compilation du kernel sous Ubuntu, se réferer aussi aux tuto Debian (par ex http://andesi.org/index.php?node=77 très bien fait).

Noter que des sources du noyau peuvent être téléchargées via apt-get aussi.

D'après ce que j'ai lu, certains conseillent de s'ajouter au groupe src pour avoir les droits d'écriture dans /usr/src et d'utiliser fakeroot pour compiler ou encore de télécharger les sources dans son répertoire perso.

------------------------------ Google est ton ami, Wikipedia est ton amie, et pour le reste, il y a les Bescherelle...

Et pour 0 € / mois, il y a TH FR et TG FR
Répondre à Mathieu C

trés bonne idée ce tuto !

Prévoir quelques heures devant soi quand même...

Le plus marrant c'est quand on arrive à menuconfig ! ll y a un bon paquet d'options ! bon courage ! :lol:

Peut être pourrais-tu donner les principales options à configurer, et lesquelles sont à mettre en dur ou en module.


Message édité par SuseX le 30-04-2007 à 23:02:29
------------------------------ tutos

L'aide se trouve sur le forum : je n'aide pas par MP
Répondre à SuseX

Mmmh j'ai du le recompiler sur les machines de la fac une fois : kernel panic
je me suis juré de pas essayé chez moi..

Répondre à Anonyme

ah le bon vieux kernel panic ! La rêve de tout linuxien, ça fait tout drôle la première fois : on est comme un idiot devant l'ordi sans savoir quoi faire...

je me rappelle de mon premier : je ne savais pas quoi faire, et tout paniqué comme mon noyau j'ai tout formaté !

Depuis j'ai toujours au moins 2 noyaux installés.

------------------------------ tutos

L'aide se trouve sur le forum : je n'aide pas par MP
Répondre à SuseX

C'est bien expliqué, mais je croit que je vais attendre d'avoir 2 PC avant d'essayer.

------------------------------ There are only 10 types of people in the world: Those who understand binary and those who don't.
Répondre à leloup146

Tiens leloup oO c'est toi que j'ai essayé d'aider sur irc pour ton sources.list ?

Répondre à Anonyme

Anonyme a écrit :

Tiens leloup oO c'est toi que j'ai essayé d'aider sur irc pour ton sources.list ?


Non, j'ai jamais demandé d'aide sur IRC encore (concernant ubuntu), j'ai toujours trouvé sur internet.

------------------------------ There are only 10 types of people in the world: Those who understand binary and those who don't.
Répondre à leloup146

Désolé au temps pour moi.

Répondre à Anonyme

Hips, j'édite, je viens juste de voir que j'ai fait une erreur !
Personne pouvait me prevenir ?

 
Code :
  1. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  2. tar xjf linux-2.6.20.tar.bz2
  3. ln -s linux-2.6.20.tar.bz2
  4. cd /usr/src/linux


Remplacé par:

Code :
  1. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  2. tar xjf linux-2.6.20.tar.bz2
  3. ln -s linux linux-2.6.20
  4. cd /usr/src/linux

Message cité 1 fois
Message édité par Moi123@IDN le 10-06-2007 à 11:43:23
------------------------------ VieDeGeek || Hinsolite
Répondre à Moi123@IDN

je viens de voir ce bon tuto,
je rajouterais juste à l'étape menuconfig qu'on peut récupérer la config actuelle du noyau dans:
/boot/config-`uname -r`

ce qui permet de ne pas se prendre la tete avec les options au cas ou on voudrait juste en rajouter une.


@moi123: pourquoi ne pas prendre les sources fournies par la distrib?

------------------------------ Ne pas oublier le [resolu] pour finir le sujet.
Penser à voir les tutos, ca peut aider!
Répondre à coca25

Je dirai que ça permet d'avoir la dernière version du noyau, ce qui n'est pas forcement le cas avec les dépots des distro. ;)

------------------------------ tutos

L'aide se trouve sur le forum : je n'aide pas par MP
Répondre à SuseX

J'essaye dès que je retourne dans mon apart. Ya aucun Linux là ou je suis. J'espère pouvoir gagner un peu en vitesse :).


Message édité par tenSe le 19-08-2007 à 21:12:33
------------------------------ .::tnS::.
Répondre à tenSe

Moi123@IDN a écrit :

Hips, j'édite, je viens juste de voir que j'ai fait une erreur !
Personne pouvait me prevenir ?

Code :
  1. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  2. tar xjf linux-2.6.20.tar.bz2
  3. ln -s linux-2.6.20.tar.bz2
  4. cd /usr/src/linux


Remplacé par:

Code :
  1. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  2. tar xjf linux-2.6.20.tar.bz2
  3. ln -s linux linux-2.6.20
  4. cd /usr/src/linux




Il semble y avoir encore une erreur :P

Le lien symbolique devrait être

Code :
  1. ln -s linux-2.6.20 linux


et non

Code :
  1. ln -s linux linux-2.6.20



Sinon, très bonnes explications !

Répondre à ks156
Tom's Guide > Forum > Systèmes d'exploitation (Windows, Mac OS, Linux...) > [Tuto] Compiler son Kernel sous Ubuntu !
Aller à :

Il y a 255 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Liens