Yadomi!

Do you remember when the world wide web was fun ?


uBoot et netconsole

Quand j'ai mi ArchLinux sur le DockStar, au début j'utilisais une clef usb qui avait la mauvaise habitude de booter une fois sur deux. Au début je pensais que c'était une histoire de partionnement ext3 non pris en charge par uBoot mais non, cela ne venais pas de cela. En faite il s'agissait de la clef elle même qui était en cause, sûrement trop lente lors du démarrage. En cherchant justement le pourquoi du comment je suis tomber sur un outils bien pratique: la netconsole.

La netconsole se contente d'envoyer les messages du noyaux via UDP, c'es très rapide et ça marche plutôt bien, à condition de bien l'avoir configurer. Voila comment je l'ai mis en place:

Sur le DockStar

La configuration ce fait avec fw_setenv, vous pouvez soit l'utiliser depuis le système d'origine de PogoPlug ou depuis ArchLinux, chez moi depuis Arch, la commande n'était pas dans mon PATH, il faut donc utiliser le chemin absolu: /usr/sbin/fw_setenv

/usr/sbin/fw_setenv serverip [adresse IP PC Serveur]
/usr/sbin/fw_setenv ipaddr [adresse IP Dockstar]
/usr/sbin/fw_setenv if_netconsole 'ping $serverip'
/usr/sbin/fw_setenv start_netconsole 'setenv ncip $serverip; setenv
bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;'
/usr/sbin/fw_setenv preboot 'run if_netconsole start_netconsole'

Sur le PC Serveur

Les termes peuvent porter à confusion mais le PC serveur c'est bien celui où vous aller voir les messages. Donc si votre PC est sous ArchLinux on utilise Netcat:

nc -lu 6666
nc -u 192.168.1.100 6666

La deuxième commande est dispensable si vous voulez seulement voir les messages de boot, en effet elle sert a faire l'inverse, soit à envoyer des messages à votre dockstar depuis le PC.

Et sous vous êtes sous une distrib basée sur Debian la commande sera surement :

nc -l -u -p 6666

Et voila, il suffit de rebooter le dockstar pour admirer le travail

sudo reboot

Et les joli messages de boot s'affiche :)

Sources