[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bootlog - Copie des messages au boot



Bonjour,

petit retour sur le thread concernant bootlogd.
Après avoir regarder les sources de bootlogd, google-izer un max, fouiller un peu partout j'ai trouvé ceci :

- bootlogd est fourni (source seul) en stable dans sysvinit mais pas compilé pour un sombre pb lié à la fonction openpty() ("Bugs: Uses openpty(), only available in glibc. Sorry.") et personne ne semble s'être penché sur le pb :/. - cette fonction est dispo via la libutil, pour l'inclure, modifier le Makefile de bootlogd pour l'ajouter après LDFLAGS (-lutil) et ajouter la cible bootlogd à la liste des cibles compilées lorsque le flag "Debian" est mis (cf Makefile). - peut être que l'utilisation de bootlogd nécéssite des options spécifiques dans le noyau (cf doc).

Cela dit, je l'ai compilé, installé et un peu testé. Lancé après le boot, bootlogd retourne une erreur (" bootlogd: cannot find console device" parce qu'après parcours de /dev/* le findtty echoue. Mais là le code est un poil obscure à mon niveau pour bien comprendre le pourquoi du comment, il semblerait qu'il se base sur les paramètres passé au noyau lors du boot (du style console=xxx, mais ce n'est pas les params de lilo, enfin je pense pas). Aussi, dans le paquet, les scripts suggère un démarrage trop précoce ("S05" dans /etc/rcS.d) avant le montage des partitions (en woody, c'est en S35) donc à moins d'utiliser une console série, c'est mort.

Enfin voilà où j'ai abouti. Bon au passage, je me suis amusé à découvrir des outils de création des paquets Debian etc sympathique expérience.

[HS] Question à François Boisson (ou d'autres ;) ) : existe t'il un tutorial simple pour la création d'un paquet de A à Z ?

Le patch:
------8<-----------CUT-HERE---------------------------8<-----------
--- Makefile            Tue Nov  6 12:58:16 2001
+++ Makefile-patched    Sat Mar 20 11:06:34 2004
@@ -16,9 +16,9 @@
# For Debian we do not build all programs, otherwise we do.
ifeq ($(DEBIAN),)
PROGS  = init halt shutdown killall5 runlevel sulogin utmpdump \
-               last mesg wall
+               last mesg wall bootlogd
else
-PROGS  = init halt shutdown killall5 runlevel sulogin last mesg
+PROGS  = init halt shutdown killall5 runlevel sulogin last mesg bootlogd
endif

BIN_OWNER      = root
@@ -62,7 +62,7 @@
               $(CC) $(LDFLAGS) -o $@ dowall.o shutdown.o utmp.o

bootlogd:      bootlogd.o
-               $(CC) $(LDFLAGS) -o $@ bootlogd.o
+               $(CC) $(LDFLAGS) -lutil -o $@ bootlogd.o

init.o:                init.c init.h set.h reboot.h
               $(CC) -c $(CFLAGS) init.c
------8<-----------CUT-HERE---------------------------8<-----------


A+,

 J8.



Reply to: