Bonjour à tous,
J'ai comme projet d'« installer » (ou plus exactement de booter) un noyau Linux temps-réel. Pour ce faire, j'ai téléchargé le noyau Linux 3.14.29 et je l'ai patché avec RT Linux 3.14.29-rt26. Puis j'ai configuré le noyau ainsi patché pour ensuite le compiler, et générer son initrd… Jusque-là, tout semble bien se passer : aucune erreur ne s'affiche.
Mais (car oui, il y a un « mais », sinon ce topic n'aurait pas lieu d'être☺ ), après avoir configuré à la main grub.cfg - celui-ci ne s'étant pas màj automatiquement suite à initrd, allez savoir pourquoi… - , je lance le boot RT Linux et là, l'erreur « sbin/init error 8 (exists but couldn't execute it) » s'affiche. D'après Google, l'erreur n°8 indique que le fichier init est corrompu (mauvais format de fichier).
Alors, je décide de réinstaller ma distrib', openSUZE (distrib' sous laquelle j'ai compilé, configuré, etc. RT Linux), et je recommence tout de A à Z : l'erreur s'affiche encore. J'espérais que le processus init se serait regénéré suite à cette réinstallation, mais il n'en n'est rien.
Le plus étonnant, c'est que le boot de openSUZE marche parfaitement : pas d'erreur de corruption du fichier init.
Je ne sais pas du tout quoi faire. Voici deux fichiers qui, peut-être, pourraient avoir une certaine utilité… (n'hésitez pas à me demander d'en envoyer d'autres si c'est nécessaire : je le ferai volontiers ! ☺ ) :
1- Fichier .config du noyau patché : http://textup.fr/117717qW
2- Fichier /boot/grub2/grub.cfg (configuration de GRUB2) : http://textup.fr/117719l2
En vous remerciant d'avance ☺,
Bonne journée
# au hazard, une histoire de compression ?
Posté par NeoX . Évalué à 3. Dernière modification le 01 février 2015 à 17:05.
deja ca ne va pas marcher ton OS est sur du BTRFS, mais ton noyau ne l'a pas dans ses pilotes
en effet, dans ton GRUB :
mais dans ton CONFIG
Ensuite quand on compare les lignes du GRUB de Suse
à tes lignes à toi,
on voit quand meme qu'il manque quelques lignes, entre autre les insmod qui vont charger les pilotes de filesystem avant d'aller plus loin.
donc dans ton cas, ajoute le support de BTRFS dans le noyau, et ajoute les lignes insmod dans grub
ca ira mieux.
note : pas besoin de reinstaller la distrib, fait la juste booter sur l'entrer suse pour retourner sur le noyau d'origine.
[^] # Re: au hazard, une histoire de compression ?
Posté par Anonyme . Évalué à 1.
Bonjour,
Merci d'avoir pris le temps de me répondre.
J'ai supprimé la menuentry 'RTLinux'. En effet, GRUB2 avait bel et bien créé la bonne entrée, elle est juste un peu cachée, et je ne l'ai pas remarquée (c'est un sous-menu en fait)…
Du coup, les problèmes des insmod est réglé.
J'ai rajouté le support BTRFS dans le .config, et j'ai aussi activé BINFMPT_AOUT.
Mais je rencontre toujours le même problème. Du coup, je vais remplacer le .config du noyau patché par celui de ma distrib', et appliquer dessus un ou deux changements nécessaires au support de RT Linux.
Je mettrai à jour ce post ☺.
# Problème résolu - Solution
Posté par Anonyme . Évalué à 2.
Edit important :
En fait, ce bug était tout simplement dû à la commande bash make i386-config, puisque cette dernière a configuré le noyau pour être un kernel 34 bits.
Or, ayant lancé un bash file sur le fichier systemd, j'ai pu remarquer que init était un lanceur 64bits (init étant un lien symbolique vers systemd).
Donc le kernel ne pouvait naturellement pas utiliser init (d'où le message d'erreur n°8).
Au final j'ai utilisé le .config de mon openSUSE, puis j'ai fait un make menuconfig pour activer l'option CONFIG_PREEMPT_FULL (Processor type and features —> Preemption Model () —> Fully Preemptible Kernel (RT)).
J'ai aussi suivi les étapes suivantes (étapes qui m'ont été données sur la mailing-list du projet RT Linux - linux-rt-users@vger.kernel.org) :
[^] # Re: Problème résolu - Solution
Posté par NeoX . Évalué à 2.
ben si tu utilises un system 64bits, pourquoi ne pas simplement faire un
make x86_64-config
poour avoir un noyau en 64bits ?[^] # Re: Problème résolu - Solution
Posté par Mali (site web personnel) . Évalué à 4.
Si make i386-config, à généré un noyau 34 bits. je confirme, c'est un bug :)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.