Compiler le noyau Linux en conservant la configuration d'une version précédente

Après l'installation d'un nouveau noyau de ma distribution Linux le serveur ne fonctionne plus. Afin de tester si le problème vient de la configuration ou d'un patch, je vais essayer de compiler la nouvelle version en partant de la configuration de l'ancienne.

Installation des sources

sudo apt-get install linux-source
mkdir src
cd src
tar --extract --file /usr/src/linux-source-2.6.24.tar.bz2 --verbose
cd linux-source-2.6.24

Copie de l'ancienne configuration

cp /boot/config-2.6.27.39-20091124a .config

Mise à niveau de la configuration

make oldconfig
Répondre N si module expérimental, sinon toujours répondre par défaut

Patch afin de désactiver le dernier module (CONFIG_SCSI_WAIT_SCAN=m) : http://lkml.indiana.edu/hypermail/linux/kernel/0712.0/0789.html

Installer le paquet libcdk5-dev
make menuconfig
Désactiver les fs qui ne servent pas (par exemple ext4 n'est pas supporté dans ma version - ext4, reiserfs, jfs, network file system).
Dans General setup ajouter un suffixe dans local version (par exemple -custom).
Dans Devise Drivers / SCSI device support mettre Y pour create module which waits for SCSI scanning to finish.

Compilation

screen -l
make 2>&1 | tee ~/2012-06-23-compile-kernel.log
(Ctrl-A d pour détacher la session)

Installation

sudo make install
sudo mkinitramfs -o /boot/initrd.img-2.6.24.6-custom

Paramétrage de grub

Page top