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

Forum specifique au noyaux Linux?

37 réponses
Avatar
Pim
Bonjour,

Je ne suis pas débutant sous Linux : partique depuis 1997.

j'ai voulu compiler mon noyaux Linux 3.2.65 sans initrd,
ce que j'ai fait des centaines de fois avec les noyaux 2.xxx
sans probleme.
Mais là avec cette version : il persiste à me faire une
initrd malgré les options que je lui met.

Alors s'il y a un forum spécifique au noyau Linux (version 3),
je suis preneur.

Et désolé pour la gène occasionnée.


D'avance, je vous remercie.

10 réponses

1 2 3 4
Avatar
Pim
Le Tue, 17 Feb 2015 20:18:59 +0100,
Doug713705 disait ceci :
Le 17-02-2015, Pim nous expliquait dans
fr.comp.os.linux.configuration
() :

Et depuis que j'ai recompilé le noyau, j'ai toujours un
"kernel panic" que je mette ou pas l'initrd.

Il doit manquer un truc mais quoi?



Le support pour le système de fichier utilisé pour la partition racine ?
Le support pour la type de partition utilisé ?

L'autre jour j'ai lutté quelques heures avant de m'apercevoir que
j'avais oublié le support pour m'apercevoir que je n'avais
pas coché le support pour "l'hologe temps réel" (CONFIG_RTC_CLASS) ce
qui n'empéchait en rien la compilation du noyau ni son fonctionement mais
rendait le driver de la carte wifi inopérant bien que le module se
chargeait/déchargeait sans problème.

A noter que sous debian : il pourrai peut-etre s'agir aussi
d'une procédure particulière de la génération de l'initrd.



Houlà... Moi... Debian...

Est-ce que grub peut intérragir sur ce processus?
Je suis en grub2 et je trouve que c'est lourd comme boot loader,
pour ce que ça fait.



Houlà... Moi.. Grub2...

:)

Alors , déjà j'avais oublié CONFIG_BLK_DEV_SD=y et forcément sans cela
aucune chance de reconnaitre la partition racine.
Mais en l'y ajouter : toujours pareil : ça commence à être gonflant!
Scrogneugneu!

Je me demande s'il n'y a pas une option pour reconnaitre les uuid
car mon grub demande l'uuid du disque et non /dev/sdxx .



Je ne crois pas et au pire il suffit de modifier fstab en conséquence
pour vérifier.

Bon ça je pourrais le tester en changant dans grub mais j'en ai
marre de bidouiller.

Alors je propose de poser mon .config ici:

Et peut-être que vous pourriez voir ce qui peut manquer.



Difficile à dire sans connaître le matériel sur lequel ce noyau est
sensé tourner ni plus de détail sur la panique.




Il me dit : on unknown block (0,0) en gros qu'il ne trouve
pas ma partition racine.
J'ai fait un ls et je vois bien mes noyaux et l'initrd.
Peut-être que je devrais encore essayer sans l'uuid.
Merci de votre aide en tout cas.
Cordialement.
--
Doug



Avatar
Kevin Denis
Le 17-02-2015, Pim a écrit :
Il me dit : on unknown block (0,0) en gros qu'il ne trouve
pas ma partition racine.



(0,0) si je ne me trompe pas, c'est la première partition du
premier disque.
Du coup, est-ce que tu as mis le pilote du disque dur?
Ou le block layer? Ou l'émulation SCSI?
--
Kevin
Avatar
Nicolas George
Kevin Denis , dans le message
, a écrit :
(0,0) si je ne me trompe pas, c'est la première partition du
premier disque.



Tu te trompes. Ce serait valable pour Grub 1, pas pour le noyau Linux.

« (0,0) », c'est que le noyau n'a pas réussi à traduire le nom de la
partition racine en couple majeur-mineur. Ça peut être que l'information
n'est pas renseignée, que le driver du contrôleur n'est pas compilé en dur,
ou bien encore que le label ou l'UUID n'a pas été trouvé -- ce dernier point
pouvant encore venir d'un driver manquant.

Dans tous les cas, il faudrait voir les messages qui viennent avant.
Avatar
Pascal Hambourg
Nicolas George a écrit :

« (0,0) », c'est que le noyau n'a pas réussi à traduire le nom de la
partition racine en couple majeur-mineur. Ça peut être que l'information
n'est pas renseignée, que le driver du contrôleur n'est pas compilé en dur,
ou bien encore que le label ou l'UUID n'a pas été trouvé -- ce dernier point
pouvant encore venir d'un driver manquant.



A moins que ça ait changé (ce qui est fort possible, j'avais cru lire
une annonce dans ce sens), le noyau ne gère pas les UUID de système de
fichiers. C'est le travail de l'initrd/initramfs, généralement avec
udev. Cette erreur peut donc se produire quand la racine est spécifiée
par UUID, LABEL ou autre identifiant du même tonneau et qu'un
initrd/initramfs n'a pas été chargé.
Avatar
Pim
Le Fri, 20 Feb 2015 10:10:22 +0100,
Pascal Hambourg disait ceci :
Nicolas George a écrit :

« (0,0) », c'est que le noyau n'a pas réussi à traduire le nom de la
partition racine en couple majeur-mineur. Ça peut être que l'information
n'est pas renseignée, que le driver du contrôleur n'est pas compilé en dur,
ou bien encore que le label ou l'UUID n'a pas été trouvé -- ce dernier point
pouvant encore venir d'un driver manquant.



A moins que ça ait changé (ce qui est fort possible, j'avais cru lire
une annonce dans ce sens), le noyau ne gère pas les UUID de système de
fichiers. C'est le travail de l'initrd/initramfs, généralement avec
udev. Cette erreur peut donc se produire quand la racine est spécifiée
par UUID, LABEL ou autre identifiant du même tonneau et qu'un
initrd/initramfs n'a pas été chargé.



Donc si ça avait changé comme tu l'indiques, il ne serait plus possible
de faire un noyau monolitique sans initrd sauf si on utilise
/dev/[sh]d[0-9]+ comme identification de la partition racine.

Ce qui n'est pas du tout dynamique: si tu intervertis tes disques dans
ton système ou la config du BIOS,
tu devra modifier la conf de ton boot-loader
pour lui indiquer un autre périphérique de disque
et cela voudrai dire que le support des uuid deviendrai
alors obsolète dans ce cas.

Pour ma part: je ne crois pas à cette hypothèse car je ne crois pas
un seul instant que les développeurs du noyaux Linux
auraient permis ces regresssions.

Maintenant, vos posts m'intéressent car il doit effectivement y avoir
un smilblick entre ces 3 entités:
initrd
partition principale
boot-loader (grub2 dans mon cas)

Je vais déjà voir si je peux booter autrement qu'en uuid.
Je n'ai pas encore refait le test: je travaille sur
plusieurs choses.

Merci de ton aide en tout cas.

Bien Cordialement.
Avatar
Pim
Le 18 Feb 2015 14:06:27 GMT,
Kevin Denis disait ceci :
Le 17-02-2015, Pim a écrit :
Il me dit : on unknown block (0,0) en gros qu'il ne trouve
pas ma partition racine.



(0,0) si je ne me trompe pas, c'est la première partition du
premier disque.
Du coup, est-ce que tu as mis le pilote du disque dur?
Ou le block layer? Ou l'émulation SCSI?
--
Kevin




grep DEV_SD .config
CONFIG_BLK_DEV_SD=y

grep -E "SCSI.+?=y" .config
CONFIG_CISS_SCSI_TAPE=y
CONFIG_SCSI_MOD=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
CONFIG_SCSI_LOGGING=y
CONFIG_SCSI_SCAN_ASYNC=y
CONFIG_SCSI_FC_TGT_ATTRS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_SCSI_EATA_TAGGED_QUEUE=y
CONFIG_SCSI_EATA_LINKED_COMMANDS=y
CONFIG_SCSI_SYM53C8XX_MMIO=y
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
CONFIG_ISCSI_IBFT_FIND=y


Mais peut-être que ce n'est pas correct ou qu'il en manque.
Je ne peux pas copier tout le .config. a moins de la mettre
sur paste.com. mais bon!

Merci pour ton aide.
Avatar
Pim
Le 20 Feb 2015 10:21:34 GMT,
Pim disait ceci :
Le 18 Feb 2015 14:06:27 GMT,
Kevin Denis disait ceci :
Le 17-02-2015, Pim a écrit :
Il me dit : on unknown block (0,0) en gros qu'il ne trouve
pas ma partition racine.



(0,0) si je ne me trompe pas, c'est la première partition du
premier disque.
Du coup, est-ce que tu as mis le pilote du disque dur?
Ou le block layer? Ou l'émulation SCSI?
--
Kevin




grep DEV_SD .config
CONFIG_BLK_DEV_SD=y

grep -E "SCSI.+?=y" .config
CONFIG_CISS_SCSI_TAPE=y
CONFIG_SCSI_MOD=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
CONFIG_SCSI_LOGGING=y
CONFIG_SCSI_SCAN_ASYNC=y
CONFIG_SCSI_FC_TGT_ATTRS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_SCSI_EATA_TAGGED_QUEUE=y
CONFIG_SCSI_EATA_LINKED_COMMANDS=y
CONFIG_SCSI_SYM53C8XX_MMIO=y
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
CONFIG_ISCSI_IBFT_FIND=y


Mais peut-être que ce n'est pas correct ou qu'il en manque.
Je ne peux pas copier tout le .config. a moins de la mettre
sur paste.com. mais bon!

Merci pour ton aide.




Alors, maintenant je boote sans problème avec
linux /vmlinuz-3.2.0-4-amd64 root=/dev/sdb5 ma partition racine
mais ça ne marche plus avec root=UUID=xxxxxx.
Ce qui ne m'arrange pas sur ce poste multiboot sur lequel je bidouille
pas mal avec le BIOS et les disques. :(
Quel est le support qui gère cela?
Ou alors pour quelqu'un qui connaitrai un peu grub2:
n'y aurais-til pas un raffraichissement à faire du coté de grub2?

D'avance Merci.
Avatar
Pascal Hambourg
Pim a écrit :
Pascal Hambourg disait ceci :
A moins que ça ait changé (ce qui est fort possible, j'avais cru lire
une annonce dans ce sens), le noyau ne gère pas les UUID de système de
fichiers. C'est le travail de l'initrd/initramfs, généralement avec
udev. Cette erreur peut donc se produire quand la racine est spécifiée
par UUID, LABEL ou autre identifiant du même tonneau et qu'un
initrd/initramfs n'a pas été chargé.



Donc si ça avait changé comme tu l'indiques, il ne serait plus possible
de faire un noyau monolitique sans initrd sauf si on utilise
/dev/[sh]d[0-9]+ comme identification de la partition racine.



Au contraire, ce serait maintenant possible alors que ça ne l'était pas
jusqu'ici.

Ce qui n'est pas du tout dynamique: si tu intervertis tes disques dans
ton système ou la config du BIOS,
tu devra modifier la conf de ton boot-loader
pour lui indiquer un autre périphérique de disque



C'est bien pour cela qu'on utilise préférentiellement les UUID
maintenant, donc un initrd ou initramfs.

et cela voudrai dire que le support des uuid deviendrai
alors obsolète dans ce cas.



Pas compris ce que tu veux dire.

Pour ma part: je ne crois pas à cette hypothèse car je ne crois pas
un seul instant que les développeurs du noyaux Linux
auraient permis ces regresssions.



Ce n'est pas un régression, ça a toujours été ainsi : sauf changement
récent, le noyau ne gère pas les UUID.
Avatar
Nicolas George
Pascal Hambourg , dans le message <mc88qb$1n8o$, a
écrit :
Donc si ça avait changé comme tu l'indiques, il ne serait plus possible
de faire un noyau monolitique sans initrd sauf si on utilise




^^^^^^^^^^^
/dev/[sh]d[0-9]+ comme identification de la partition racine.


Au contraire, ce serait maintenant possible alors que ça ne l'était pas
jusqu'ici.



Tu as peut-être raté un petit bout.
Avatar
Pim
Le Fri, 20 Feb 2015 22:26:34 +0100,
Pascal Hambourg disait ceci :
Pim a écrit :
Pascal Hambourg disait ceci :
A moins que ça ait changé (ce qui est fort possible, j'avais cru lire
une annonce dans ce sens), le noyau ne gère pas les UUID de système de
fichiers. C'est le travail de l'initrd/initramfs, généralement avec
udev. Cette erreur peut donc se produire quand la racine est spécifiée
par UUID, LABEL ou autre identifiant du même tonneau et qu'un
initrd/initramfs n'a pas été chargé.



Donc si ça avait changé comme tu l'indiques, il ne serait plus possible
de faire un noyau monolitique sans initrd sauf si on utilise
/dev/[sh]d[0-9]+ comme identification de la partition racine.



Au contraire, ce serait maintenant possible alors que ça ne l'était pas
jusqu'ici.

Ce qui n'est pas du tout dynamique: si tu intervertis tes disques dans
ton système ou la config du BIOS,
tu devra modifier la conf de ton boot-loader
pour lui indiquer un autre périphérique de disque



C'est bien pour cela qu'on utilise préférentiellement les UUID
maintenant, donc un initrd ou initramfs.

et cela voudrai dire que le support des uuid deviendrai
alors obsolète dans ce cas.



Pas compris ce que tu veux dire.

Pour ma part: je ne crois pas à cette hypothèse car je ne crois pas
un seul instant que les développeurs du noyaux Linux
auraient permis ces regresssions.



Ce n'est pas un régression, ça a toujours été ainsi : sauf changement
récent, le noyau ne gère pas les UUID.



Tu ne m'as pas compris, mais peut-être aussi que je n'ai pas été très clair:

Moi je suis POUR l'UUID pour la reconnaissance des disques mais
je ne crois pas que ce suport doit être dans l'initrd ou qu'il
faille une initrd pour cela.

En tout cas j'ai enfin réussit à booter mais avec root=/dev/sda5, mais pas
avec l'UUID.

Une initrd a été générée alors qu'elle n'étais pas demandée.
Je ne sait pas comment désactiver ceci sous Debian.
Le fait que je dise ou pas (à grub) de charger l'initrd ne change rien
sur ce point. Voila.

Merci de ton aide en tout cas.
1 2 3 4