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