Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

compilation kernel et démarrage

4 réponses
Avatar
GUERIN Marc
Bonjour,

* Je suis bloqué sur le démarrage du noyau, après
la recompilation du noyau.

J'ai installé la debian sur mon nouveau PC (ce n'est pas ma 1ère install
de debian),
et j'ai recompilé le noyau (2.6.8-1-386).

* J'ai donc repris la conf qui était dans le rep /boot/.config,
j'ai recompilé et rebooté. Voici la trace du redémarrage :

"modprobe : FATAL : Could not load /lib/modules/2.6.8/modules.dep
No such file or directory
pivot_root : No chuch file or directory
/sbin/init: 431 : cannot open dev/console : No shuch file
Kernel panic : Attempted to kill init!"



* Et voici la phase de compilation :

cd /usr/src/linux
make O=/root/build/kernel-2.6.8 mrproper (efface .o)
make O=/root/build/kernel-2.6.8 xconfig (ou make O=... config
ou make O=... menuconfig
ou make O=... oldconfig)
(make O=/home/name/build/kernel menuconfig)
make O=/root/build/kernel-2.6.8
sudo make O=/root/build/kernel-2.6.8 modules_install install

* Je n'ai pas recréé d'initrd. C'est peut-être là le pbe, mais je ne
sais pas générer le fichier

* mon bootloader est grub. C'est la 1ère fois que je l'utilise.
title Debian GNU/Linux, kernel 2.6.8-1-386 (noyau precompile debian)
root (hd0,4)
kernel /boot/vmlinuz-2.6.8-1-386 root=/dev/sda5 hdb=ide-scsi ro
initrd /boot/initrd.img-2.6.8-1-386
savedefault
boot

title Debian GNU/Linux, kernel 2.6.8-1 (nouyau recompile)
root (hd0,4)
kernel /boot/vmlinuz-2.6.8 root=/dev/sda5 hdb=ide-scsi ro
initrd /boot/initrd.img-2.6.8-1-386
savedefault
boot

le premier bloc fonctionne, mais pas le second.


* Je suis en SATA

* J'ai essayé en mettant CONFIG_IDE et CONFIG_BLK_DEV_IDE
en dur.


Je n'ai plus d'idée.
Qui peut en avoir un peu pour moi?

merci

-----
marc

4 réponses

Avatar
yves

Bonjour,


Bonjour

* Je suis bloqué sur le démarrage du noyau, après
la recompilation du noyau.


Ça arrive... ;-)

J'ai installé la debian sur mon nouveau PC (ce n'est pas ma 1ère install
de debian),
et j'ai recompilé le noyau (2.6.8-1-386).

* J'ai donc repris la conf qui était dans le rep /boot/.config,
j'ai recompilé et rebooté. Voici la trace du redémarrage :

"modprobe : FATAL : Could not load /lib/modules/2.6.8/modules.dep
No such file or directory
pivot_root : No chuch file or directory


Pour le moment, les messages sont clairs. Le fichier
/lib/modules/2.6.8/modules.dep n'existe pas (voir plus bas pourquoi)

/sbin/init: 431 : cannot open dev/console : No shuch file
Kernel panic : Attempted to kill init!"

* Je n'ai pas recréé d'initrd. C'est peut-être là le pbe, mais je ne
sais pas générer le fichier


Tout à fait, c'est là le problème. Il faudrait voir avec mkinitrd, ça
fait un moment que je ne l'ai pas utilisé.

* mon bootloader est grub. C'est la 1ère fois que je l'utilise.
title Debian GNU/Linux, kernel 2.6.8-1-386 (noyau precompile debian)
root (hd0,4)
kernel /boot/vmlinuz-2.6.8-1-386 root=/dev/sda5 hdb=ide-scsi ro
initrd /boot/initrd.img-2.6.8-1-386
savedefault
boot

title Debian GNU/Linux, kernel 2.6.8-1 (nouyau recompile)
root (hd0,4)
kernel /boot/vmlinuz-2.6.8 root=/dev/sda5 hdb=ide-scsi ro
initrd /boot/initrd.img-2.6.8-1-386
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


Si tu n'as pas recréé d'initrd, tu ne mets pas cette ligne là... En
fait, tu demande à ton noyau de démarrer sur le initrd qui contient les
modules de l'autre noyau. Donc forcément, il n'y arrive pas (il n'y a
comme modules que /lib/modules/2.6.8-1-386/* dans le ramdisk)...

savedefault
boot

* Je suis en SATA

* J'ai essayé en mettant CONFIG_IDE et CONFIG_BLK_DEV_IDE
en dur.


Très bien. Vérifie que tu as aussi le système de fichier de ta racine en
dur. Tu peux alors démarrer tout simplement en supprimant cette ligne
relative au initrd. Si tu as un kernel panic, cannot mount rootfs, c'est
qu'il manque quelque chose en dur dans ton noyau pour avoir accès à la
partition, donc rechercher quels sont les autres pilotes à mettre en dur
pour accéder au SATA.

Vérifie aussi que tu as les pilotes indispensables en dur pour démarrer
(je repense à ton cannot open console)

merci


De rien. Bon courage.

Yves

--
http://wiki.rougy.net -- Wiki Unix/Linux

Avatar
bricem13
salut

de préférence sous debian, sers-toi de kernel-package pour créer des
.deb pour le noyau.

la commande est:

make-kpkg --rootcmd fakeroot --append-to-version=.tuxbox
--revision=2.6.9 --initrd kernel_image kernel_source kernel_headers
kernel_doc

revision est la version du noyau, append-to-version te permet d'avoir
un chti nom à toi pour tes .deb et initrd te fait une initrd tout
seul! avec cette commande tu génères les 4 packets: kernel-image,
kernel-doc, kernel-headers et kernel-source, seuls kernel-image et
kernel-headers sont vraiment nécessaires.

Au début tu as un warning concernant l'initrd, ignores la simplement
(chez moi aucun pbm même avec les sources de kernel.org)


Brice

ps: il y a moyen de générer un initrd après coup mais je sais plus
comment... google donc!
Avatar
Rakotomandimby (R12y) Mihamina
GUERIN Marc :
Bonjour,


Bonjour

et j'ai recompilé le noyau (2.6.8-1-386).


Debian en est au 2.6.8-2. Débien n'est pas du genre à "monter" de n° de
version pour rien, donc je pense que tu y gagnerais à mettre à jour ton
truc.

Qui peut en avoir un peu pour moi?


Tu as reconduit la plupart des options du noyau par defaut de Debian,
mais ce noyau là ne peut booter qu'accompagné d'un initrd.

Je ne sais pas exactement l'option qu'il faut desactiver pour enlever
l'obligation d'avoir un initrd, mais en parcourant les options tu devrais
la trouver.

Soit tu garde l'option et tu fabrique l'initrd, soit tu vires l'option et
t'as pas besoin de fabriquer l'initrd.

merci


De rien, cela dit, je ne suis pas sûr que ce soit la solution à ton
problème, j'ai juste remarqué que tu n'a peut-etre pas fait une étape.

--
Miroir de logiciels libres http://www.etud-orleans.fr
Développement de logiciels libres http://aspo.rktmb.org/activites/developpement
Infogerance de serveur dédié http://aspo.rktmb.org/activites/infogerance
(En louant les services de l'ASPO vous luttez contre la fracture numerique)

Avatar
GUERIN Marc
re-salut

wrote:

salut

de préférence sous debian, sers-toi de kernel-package pour créer des
.deb pour le noyau.

la commande est:

make-kpkg --rootcmd fakeroot --append-to-version=.tuxbox
--revision=2.6.9 --initrd kernel_image kernel_source kernel_headers
kernel_doc





j'ai essayé cette méthode, mais j'obtiens la même erreur
au démarrage. :-(
=> cannot open dev/console : no shuch file

J'ai également recompilé à plusieurs reprises (avec juste
la commande make), en désactivant initrd dans les options
du noyau. J'ai eu la satisfaction de voir une évolution : l'erreur
a changé =>
VFS : cannot open root device "sda 5" or unkown block (0, 0)
please append a ... "root" boot option
kernel panic VFS unable to mount root fs on unkown block(0,0)


L'utilisation de la commande make-kpkg me parait bonne,
puisque génération du fichier initrd, mais bon sang,
c'est quoi cette option qu'il me manque?
Je vais rechercher du côté des options liés à dev (de manière
générale).

Ensuite, si ça ne marche pas, je changerai de version de noyau,
mais je ne pense pas que ce soit le pbe, mais
Murphy étant toujours très fort et surprenant,
il faut s'attendre à tout.

Merci pour les conseils de chacun, ça m'a permis d'avancer un peu.

Marc

revision est la version du noyau, append-to-version te permet d'avoir
un chti nom à toi pour tes .deb et initrd te fait une initrd tout
seul! avec cette commande tu génères les 4 packets: kernel-image,
kernel-doc, kernel-headers et kernel-source, seuls kernel-image et
kernel-headers sont vraiment nécessaires.

Au début tu as un warning concernant l'initrd, ignores la simplement
(chez moi aucun pbm même avec les sources de kernel.org)


Brice

ps: il y a moyen de générer un initrd après coup mais je sais plus
comment... google donc!