Bonjour, et bonne ann�e.

Dans le but de pouvoir installer une carte nvidia, je voudrais apprendre
� compiler un noyau. J'ai un portable asus L8400L, pentium III, qui
tourne actuellement avec une image officielle debian 2.4.18-686, woody.

J'ai proc�d� de la mani�re suivante :

dans /usr/local/src,
# tar -xvjf linux-2.4.20.tar.bz2
# ln -s linux-2.4.20 linux
# cd linux
# cp /boot/config-2.4.18-386 .config
# make menuconfig (j'ai aussi essay� make oldconfig)

# make-kpkg clean
# make-kpkg kernel-image
# cd /usr/local/src
# dpkg -i kernel-image-2.4.20_10.00.Custom_i386.deb

Dans /boot, j'obtiens notamment :
System.map-2.4.20
config-2.4.20
vmlinuz-2.4.20

J'�dite ensuite /boot/boot/grub/menu.lst (j'ai une partiton /boot
s�par�e)

J'ai notamment :

title           Debian GNU/Linux, kernel 2.4.18-686
root            (hd0,1)
kernel          /vmlinuz-2.4.18-686 root=/dev/hda3 ro
initrd          /initrd.img-2.4.18-686
savedefault
#
title           Debian GNU/Linux, kernel 2.2.22
root            (hd0,1)
kernel          /vmlinuz-2.2.22 root=/dev/hda3 ro
savedefault
#
title           Debian GNU/Linux, kernel 2.4.20
root            (hd0,1)
kernel          /vmlinuz-2.4.20 root=/dev/hda3 ro
savedefault

La premi�re s�quence fonctionne avec le 2.4.18 que j'ai install� en
utilisant
kernel-image-2.4.18-686_2.4.18-5.deb

La deuxi�me fonctionne avec le 2.2.22 que j'ai compil� et install�
d'apr�s les sources :
kernel-source-2.2.22_2.2.22-1_all.deb

Par contre, avec le 2.4.18 que j'ai essay� de recompiler et avec le
2.4.20, la machine ne boote pas ; j'obtiens :

Starting kswapd
VFS: Diskquotas version dquot_6.4.0 initialized

...

TCP: Hash tables configured (established 16384 bind 16384)
kmod: failed to exec /sbin/modprobe -s -k block-major-3, errno = 2
VFS: Cannot open root device "hda3" or 03:03
Please append a correct "root=" boot option
Kernel panic: VFS: unable to mount root fs on 03:03

J'ai aussi essay� de compiler avec l'option --initrd :
# make-kpkg --initrd kernel-image

puis :
mkinitrd -k -o /boot/initrd.img-2.4.20 /lib/modules/2.4.20/

et j'ai ajout� la ligne 
initrd          /initrd.img-2.4.20
dans /boot/boot/grub/menu.lst

Rien � faire, j'obtiens toujours le m�me genre de message.


O� ai-je fait une (des) erreur(s) ?
Peut-on compiler un 2.4.x sans utiliser initrd ?

Merci d'avance pour vos lumi�res.

-- 
Pierre Meurisse

Répondre à