Durée totale : 15 min à 1h (suivant la puissance de votre ordinateur) + temps de configuration du noyau
Difficulté : 2/5 .. c'est la configuration qui est difficile
Pré-requis : connection Internet fonctionnelle lors des préparatifs
A ne faire qu'une seule fois
Installer (via Synaptic par exemple) les paquets suivants :
kernel-package
initrd
(si vous ne savez pas, supposez que oui) : cramfsprogs
libncurses5-dev
libglade-2.0dev
pour utiliser make gconfig
, libqt3-dev
pour make xconfig
, et rien du tout si vous comptez utiliser make menuconfig
.Vous pouvez
/usr/src/
) et décompressez-le (clic-droit, extraire les fichiers). Puis faites un lien appelé linux (ou “raccourci” dans le langage Windows) vers ce répertoire :cd /usr/src/ sudo tar -xjf linux-source....tar.bz2 sudo ln -s linux-source-... linux cd linux
linux-source
et décompressez-le de la même facon que précédemment.cd /usr/src/ sudo tar -xjf linux-....tar.bz2 sudo ln -s linux-... linux cd linux
Pour le moment, je n'ai trouvé aucun avantage à utiliser les sources Ubuntu : le seul avantage serait qu'elles prennent un compte un de vos composants que le noyau officiel ne supporte pas.
C'est la partie difficile : Configurer son noyau. Il faudra notamment utiliser la commande
sudo make menuconfig
Il vous faut dans un premier temps nettoyer une éventuelle précédente compilation :
sudo make-kpkg clean
Puis vous pouvez lancer la compilation du noyau :
sudo make-kpkg --append-to-version=.best --revision=1 kernel_image
Quelques explications sur make-kpkg
(le man est très bien fait : si vous voulez une aide complète, faites man make-kpkg
) :
/usr/src/
ici).
Après environ 20 minutes de compilation, vous obtiendrez dans le répertoire parent (un ou) plusieurs paquets.
Il vous suffit d'installer celui appellé kernel-image-..
(avec les bonnes versions et révisions) soit graphiquement (double-clic sur le paquet), soit en exécutant la commande
sudo dpkg -i kernel-image-....deb
Il ne vous restera plus qu'à booter et à sélectionner le bon noyau au démarrage et admirez le résultat (ou les kernel panic !!). Une fois le noyau testé, vous pouvez le désinstaller via la commande
sudo dpkg -r kernel-image-...
Tout sera nettoyé (grub et Cie).
Il faut aller sur le site de nvidia (le site français a toujours du retard sur l'international). Une fois le .run
téléchargé, il suffit de faire
sudo sh NVIDIA-Linux-*.run --accept-license --kernel-module-only --kernel-name=2.6.23.8.best
si vous avez déjà installé les pilotes propriétaires (mais pour un autre noyau). Sinon enlever l'option –kernel-module-only
, mais vous aurez besoin de quitter votre serveur X (et donc KDE ou Gnome) pour continuer l'installation.
Si vous souhaitez faire des modifications sur le pilote avant de le compiler et de l'installer, vous pouvez faire
sudo NVIDIA-Linux-x86-96.43.01-pkg1.run --extract-only cd NVIDIA-Linux*/usr/src/nv sudo nano os-registry.c
Vous aurez alors accès à certaines constantes que vous pourrez modifier avant la compilation. Attention, certaines constantes ne sont pas prises en compte par défaut: il faut alors modifier le tableau nv_parms
à la fin du fichier et vérifier que le numéro après le(s) constante(s) que vous modifiez est bien 1. Ensuite, pour compiler il vous suffira d'utiliser les mêmes options que citées plus haut, mais avec avec nvidia-installer
contenu dans le répertoire créé lors de l'extraction:
sudo sh /usr/src/NVIDIA*/nvidia-installer --accept-license --kernel-name=2.6.23.1.best --kernel-module-only
Après avoir téléchargé les sources de madwifi via SVN, vous pouvez compiler les pilotes pour votre nouveau noyau (non encore démarré) par
cd /usr/src/ sudo svn checkout http://svn.madwifi.org/madwifi/trunk madwifi cd madwifi sudo make KERNELPATH=/usr/src/linux sudo make install
Si vous utilisez VirtualBox, il vous faudra recompiler un module par la seule commande
sudo /etc/init.d/vboxdrv setup