# [boot] Aucun message d'init

## Link31

Bonjour,

Je viens de restaurer un backup de ma Gentoo (un fichier tar) sur un nouveau PC à la configuration assez similaire au précédent. J'ai adapté le noyau et les drivers pour le nouveau matériel, et tout fonctionne bien, à part un léger problème.

Au démarrage, je n'ai plus aucun message d'init ! C'est-à-dire que je n'ai plus le "INIT version...", le "copyright Gentoo Foundation" et les scripts de démarrage (ceux qui se terminent avec " ... [ok]").

J'ai bien les messages du noyau qui s'affichent, et j'obtiens bien un shell une fois que le boot est terminé. J'ai même un message d'acpid qui me donne le nombre de règles chargées, donc il arrive à écrire sur sa sortie standard. Mais aucun script de démarrage ne s'affiche. C'est particulièrement gênant quand un fsck décide se se lancer, puisqu'il ne s'affiche strictement rien avant qu'il ne soit complètement terminé.

Est-ce que quelqu'un aurait une idée de la cause du problème ? Peut-être une histoire de permissions sur la console ?

Config précédente :

- baselayout 2 (openrc)

- carte graphique nvidia

- framebuffer en 1920x1200

Config actuelle :

- baselayout 2 (openrc)

- carte graphique ati

- framebuffer en 1600x1200 (pas moyen d'avoir du 1920x1200 comme avant, mais même en texte 80x25 ça ne change rien)

edit : quelques infos supplémentaires :

- les messages s'affichent correctement au moment de l'arrêt

- pendant le démarrage, écrire quoi que ce soit au clavier n'affiche rien sur l'écran et ne déplace pas le curseur

----------

## truc

Bah, j'pense que c'est le framebuffer qui te fout en l'air, nan?

----------

## Link31

 *truc wrote:*   

> Bah, j'pense que c'est le framebuffer qui te fout en l'air, nan?

 

J'y ai bien pensé, mais ça se produit aussi sans framebuffer (console 80x25). Et les messages du noyau s'affichent, ainsi que les messages d'acpid. Donc je pense que ça vient plutôt d'init ou d'openrc. Reste à savoir pourquoi...

----------

## brubru

Salut.

Si tu ajoute init=/bin/sh aux options de démarrage du noyau, tu obtiens un shell a la place d'init.

Là, tu peux alors essayer de voir ce qui va pas (penser à remonter / en rw, ajouter /proc et /sys et les keymaps avec loadkeys fr)

Ensuite tu peux repartir sur le démarrage normal avec exec /sbin/init

Sinon tu peux aussi passer openRC en mode interactif: la touche 'I' appuyée, je crois. Tu peux alors démarrer les services un par un.

BrunoLast edited by brubru on Tue May 05, 2009 1:16 pm; edited 1 time in total

----------

## Link31

Merci de ta réponse.

J'ai déjà essayé avec init=/bin/bash, kernel panic, soi-disant parce que le processus init s'est terminé. Difficile de savoir ce qui s'est passé sans affichage. Je n'ai pas d'initrd, si ça change quelque chose.

Je vais réessayer avec init=/bin/sh.

----------

## truc

Je crois me souvenir qu'il y a une option de log à openrc, avec un peu de chance, les logs remonteront suffisamment tôt dans la procédure de démarrage?

Sinon, tu dis que ce sont deux pc aux configurations assez proches, mais à quel point? et une fois démarré, tout fonctionne normalement( hormis le fait que tu n'as pas vu les messages d'init)?

----------

## Link31

Ça m'intéresse, cette option de log. J'ai cherché rapidement une telle option dans /etc/rc.conf, mais je n'ai pas dû la voir.

Les PC sont vraiment proches, les seules différences en dehors de ce que j'ai précisé sont : le chipset son, le processeur qui est juste un modèle supérieur de C2D, et quelques périphériques genre modem 3G dont je ne suis même pas sûr qu'ils possèdent des drivers Linux. En fait, je suis passé d'un Lenovo T61p à un Lenovo W500.

Une fois démarré, tout fonctionne, et les messages d'OpenRC s'affichent bien au moment de l'arrêt ou du reboot.

----------

## Link31

Bon, alors :

- init=/bin/sh donne : kernel panic, attempted to kill init (sans le moindre prompt ou message d'erreur, en dehors des messages du noyau)

- booter avec ou sans le framebuffer et avec ou sans "quiet" ne change rien

- appuyer sur i n'a aucun effet. En fait, je ne peux rien entrer dans la console avant que le boot ne soit terminé

La fonction de log, c'est rc_logger="YES" ? Je vais essayer ça.

edit : le log ne contient que les messages d'arrêt  :Sad: 

----------

## Link31

up

----------

## truc

Tu utilises un initramfs, t'as essayé en te refaisant un joli noyal sans aucune frioriture(pas de FB, et je ne sais quelle autre joyeuseté), juste pour le test?

Si t'as un initramfs, tu peux essayer ce que brubru te proposait, mais depuis l'initramfs directement.

----------

## Link31

Je n'utilise pas d'initramfs. Je veux bien changer des options du noyau, mais j'aimerais juste savoir quoi modifier... J'imagine que ne pas inclure le FB et ne pas l'activer devrait être équivalent... Je n'ai aucune idée de la cause du problème.

Est-ce que ça pourrait être un problème de permissions causé par des règles udev qui correspondraient encore à l'ancien PC ?

----------

## xaviermiller

oui, enlève tous les fichiers "persistent" que tu vois dans udev, c'est déjà une bonne chose à faire  :Wink: 

----------

## Link31

Problème résolu  :Smile: 

En fait c'était très simple. Dans mon backup, je n'avais pas inclus les devices nodes de /dev. Donc en réalité il n'y avait aucun device node sur le disque. Mais comme udev se charge de les recréer au cours du démarrage, ça ne posait véritablement un problème que pour init.

J'ai juste récupéré un stage1 et décompressé les devices nodes à leur place, et maintenant tout fonctionne.

----------

## ghoti

Ton problème est probablement celui-ci  :Wink: 

----------

