# Fragen zu System Logging vom booten (solved)

## benjamin200

Hallo Leute,

ich nutze derzeit msyslog als Logging Dienst. Leider finde ich unter /var/log keine Datei welche Informationen über den Bootprozess enthält. Mit Bootprozess meine ich alle Meldungen die beim booten von Gentoo über den Bildschirm laufen. Muss die Konfigurationsdatei /etc/msyslog/msyslog.conf bearbeitet werden, oder muss die gesuchte Logfile schon existieren?

Beste Grüße,

BenjaminLast edited by benjamin200 on Mon Apr 12, 2004 12:53 pm; edited 3 times in total

----------

## sirro

Für Kernel-Meldungen: dmesg und für den Rest (also der Init-Prozess) gibt es AFAIK nur die Möglichkeit: großer Frambuffer  :Wink: 

----------

## benjamin200

Sorry das ich so blöd Frage:

- dmesg was ist das? Kann es weder mittels "emerge -s dmesg" oder in der /etc/msyslog/msyslog.conf finden.

- Frambuffer??? Einfach im Kernel aktivieren? Wo liegt dann die Logfile?

----------

## Inte

Schon mal versucht dmesg zu starten?  :Wink: 

Gruß, Inte.

----------

## cryptosteve

 *benjamin200 wrote:*   

> 
> 
> - dmesg was ist das? 
> 
> - Frambuffer??? Einfach im Kernel aktivieren? Wo liegt dann die Logfile?

 

dmesg = man dmesg

Framebuffer = Im Kernel richtig(!) konfigurieren, dann hast Du beim Starten eine günstigere Auflösung und kannst mit der Tastatur in den Zeilen des Bootprozesses nach oben scrollen. Das ist kein extra Logfile, das irgendwo liegt, sondern es sind einfach nur die Zeilen, die beim booten auf den Bildschirm geschrieben werden.

----------

## ruth

hi,

leider alles falsch...

(persönlich denke ich ja, dass das ein bug in den startscripten ist...  :Wink:  )

aber:

ich beziehe mich im folgenden auf sysklogd (YMMV)

in die datei /etc/init.d/sysklogd

füge man _VOR_ dem start des syslogd die zeile

/usr/bin/klogd -o -f /var/log/boot.msg

ein

als folge macht der klogd beim start einen oneshot-flush auf den messagebuffer des kernels.

_sämtliche_ startmeldungen  werden demnach nach

/var/log/boot.msg geschrieben.

also nix framebuffer usw...

wäre bei grossen servern auch ungeschickt, nur deswegen den framebuffer mitzubauen...

gruss

rootshell

----------

## benjamin200

Hallo rootshell, Inte, Steve, sirro und alle anderen,

vielen Dank für eure zahlreichen Antworten. Speziell die Info von rootshell gefällt mir. Dies Funktion scheint auch in Suse Linux bei default integriert zu sein. Dort liegt unter /var/log/ ebenfalls eine Datei names "boot.msg" mit dem kompletten Inhalt des Bootprozesses. Muss das heute Abend gleich mal in meinem System ändern damit ich diese Funktion nutzen kann.

Beste Grüße,

Benjamin

----------

## benjamin200

Hallo zusammen,

habe das ganze nun mal ausprobiert. Nur lag klogd nicht unter /usr/bin/ 

sonder unter /usr/sbin/

Nach dem ich "/usr/sbin/klogd -o -f /var/log/boot.msg" in die /etc/init.d/sysklogd aufgenommen hatte und rc-update add sysklogd default ausführte erhlielt ich folgenden Output in boot.msg:

```

Cannot find map file.

Error querying loaded modules - Function not implemented

klogd 1.4.1, log source = /proc/kmsg started.

n 2.10 entry at 0xf11f0, last bus=2

<6>PCI: Using configuration type 1

<6>mtrr: v2.0 (20020519)

<6>ACPI: Subsystem revision 20040220

<7>IOAPIC[0]: Set PCI routing entry (2-22 -> 0xa9 -> IRQ 22 Mode:1 Active:1)

<6>ACPI: Interpreter enabled

<6>ACPI: Using IOAPIC for interrupt routing

<4>ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 *9 10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 11 12 14 15)

<4>ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 *9 10 11 12 14 15)

<6>ACPI: PCI Root Bridge [PCI0] (00:00)

<4>PCI: Probing PCI hardware (bus 00)

<6>PCI: Enabled i801 SMBus device

<4>Transparent bridge - 0000:00:1e.0

<7>ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]

<7>ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCI1._PRT]

<7>ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCI2._PRT]

<6>Linux Plug and Play Support v0.97 (c) Adam Belay

<5>SCSI subsystem initialized

<6>drivers/usb/core/usb.c: registered new driver usbfs

<6>drivers/usb/core/usb.c: registered new driver hub

<7>IOAPIC[0]: Set PCI routing entry (2-17 -> 0xb1 -> IRQ 17 Mode:1 Active:1)

<7>00:00:1f[B] -> 2-17 -> IRQ 17

<7>IOAPIC[0]: Set PCI routing entry (2-23 -> 0xb9 -> IRQ 23 Mode:1 Active:1)

<7>00:00:1f[C] -> 2-23 -> IRQ 23

<7>IOAPIC[0]: Set PCI routing entry (2-19 -> 0xc1 -> IRQ 19 Mode:1 Active:1)

<7>00:00:1f[D] -> 2-19 -> IRQ 19

<7>IOAPIC[0]: Set PCI routing entry (2-16 -> 0xc9 -> IRQ 16 Mode:1 Active:1)

<7>00:01:00[A] -> 2-16 -> IRQ 16

<7>IOAPIC[0]: Set PCI routing entry (2-21 -> 0xd1 -> IRQ 21 Mode:1 Active:1)

<7>00:02:09[A] -> 2-21 -> IRQ 21

<7>IOAPIC[0]: Set PCI routing entry (2-20 -> 0xd9 -> IRQ 20 Mode:1 Active:1)

<7>00:02:09[D] -> 2-20 -> IRQ 20

<7>IOAPIC[0]: Set PCI routing entry (2-18 -> 0xe1 -> IRQ 18 Mode:1 Active:1)

<7>00:02:0e[A] -> 2-18 -> IRQ 18

<7>number of MP IRQ sources: 15.

<7>number of IO-APIC #2 registers: 24.

<6>testing the IO APIC.......................

<7>IO APIC #2......

<7>.... register #00: 02000000

<7>.......    : physical APIC id: 02

<7>.......    : Delivery Type: 0

<7>.......    : LTS          : 0

<7>.... register #01: 00178020

<7>.......     : max redirection entries: 0017

<7>.......     : PRQ implemented: 1

<7>.......     : IO APIC version: 0020

<7>.... register #02: 00000000

<7>.......     : arbitration: 00

<7>.... register #03: 00000001

<7>.......     : Boot DT    : 1

<7>.... IRQ redirection table:

<7> NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   

<7> 00 000 00  1    0    0   0   0    0    0    00

<7> 01 0FF 0F  0    0    0   0   0    1    1    39

<7> 02 0FF 0F  0    0    0   0   0    1    1    31

<7> 03 0FF 0F  0    0    0   0   0    1    1    41

<7> 04 0FF 0F  0    0    0   0   0    1    1    49

<7> 05 0FF 0F  0    0    0   0   0    1    1    51

<7> 06 0FF 0F  0    0    0   0   0    1    1    59

<7> 07 0FF 0F  0    0    0   0   0    1    1    61

<7> 08 0FF 0F  0    0    0   0   0    1    1    69

<7> 09 000 00  1    0    0   0   0    0    0    00

<7> 0a 0FF 0F  0    0    0   0   0    1    1    71

<7> 0b 0FF 0F  0    0    0   0   0    1    1    79

<7> 0c 0FF 0F  0    0    0   0   0    1    1    81

<7> 0d 0FF 0F  0    0    0   0   0    1    1    89

<7> 0e 0FF 0F  0    0    0   0   0    1    1    91

<7> 0f 0FF 0F  0    0    0   0   0    1    1    99

<7> 10 001 01  1    1    0   1   0    1    1    C9

<7> 11 001 01  1    1    0   1   0    1    1    B1

<7> 12 001 01  1    1    0   1   0    1    1    E1

<7> 13 001 01  1    1    0   1   0    1    1    C1

<7> 14 001 01  1    1    0   1   0    1    1    D9

<7> 15 001 01  1    1    0   1   0    1    1    D1

<7> 16 001 01  0    1    0   1   0    1    1    A9

<7> 17 001 01  1    1    0   1   0    1    1    B9

<7>IRQ to pin mappings:

<7>IRQ0 -> 0:2

<7>IRQ1 -> 0:1

<7>IRQ3 -> 0:3

<7>IRQ4 -> 0:4

<7>IRQ5 -> 0:5

Kernel logging (proc) stopped.

Kernel log daemon terminating.

```

Leider sind das ja nicht exakt die Meldung die ich beim booten sehe. Testweise habe ich es auch mittels rc-update add sysklogd boot versucht. War aber auch nix.

Hat folgende Fehlermeldung vielleicht etwas damit zu tun?

```

Cannot find map file.

Error querying loaded modules - Function not implemented

```

Beste Grüße,

Benjamin

----------

## DarKRaveR

Welche Meldungen fehlen Dir denn ?

Dort sind definitiv alle KERNEL-MELDUNGEN landen in boot.misc

Danach fängt der Init-Prozess an. Dort werden Fehler und Warnings an den syslogd (oder alternative) geschickt.

Es gibt allerdings auch so einiges, was natürlich nur auf die Konsole geschrieben wird.

Daher die Frage, was fehlt Dir denn ?

----------

## DarKRaveR

 *rootshell wrote:*   

> hi,
> 
> leider alles falsch...
> 
> (persönlich denke ich ja, dass das ein bug in den startscripten ist...  )
> ...

 

Dazu einige Anmerkungen:

1.) Wenn klogd verwendet wird, schön und gut, dmesg ist aber der korrektere weg. dmesg -c macht ein oneshot und existiert immer, genau dazu ist es ja da.

2.) Ich weiß nicht ob es sinnvoll ist, den kernelringbuffer im skript vom logger zu flushen und rauszuschreiben. Ich würde es eher am Anfang vom Initprozess machen. Sonst überschreibst Dir die bootmsg, wenn der logger neu gestartet wird. 

3.) Man kann sich überlegen, daß man vielleicht beim starten des loggers nochmal ein dmesg machen mag aber an das ursprüngliche file appended, damit der kernel ringbuffer aufgehoben wird. und falls sich noch etwas zwischen dem ersten dump (Anfang von Init) und dem start vom logger geändert hat.

Soweit erstmal die Grundgedanken.

----------

## benjamin200

DarKRaveR wrote:

 *Quote:*   

> 
> 
> Daher die Frage, was fehlt Dir denn ?
> 
> 

 

Ich habe ein Thread bezüglich der Installation meines Scanners offen. Der nun auch unter root und für user einwandfrei funktioniert. Siehe https://forums.gentoo.org/viewtopic.php?t=153923&highlight=

Mein Problem ist, das ich nun beim starten von /etc/init.d/hotplug eine ewig lange Meldung erhalten. Scheint keine Fehlermeldung zu sein, da  der Output von /var/log/hotplugstart.log nicht den Eindruck erweckt. Solange alles funktioniert werde ich eben mit den massigen Meldungen beim booten leben müssen.

Gentoo Install Guide empfiehlt "syslog-ng". Was für ein Systemlogger würdet Ihr mir empfehlen?

Steve` wrote:

```

dmesg = man dmesg

```

O.K. habe die man-page gelesen und "dmesg > boot.messages" ausgeführt.

Wars das, oder muss ich noch was beachten? 

Wo wird boot.messages gespeichert?

Inte wrote:

```

Schon mal versucht dmesg zu starten?

```

Nein, das tool ist mir noch neu, sorry.

----------

## DarKRaveR

 *benjamin200 wrote:*   

> DarKRaveR wrote:
> 
>  *Quote:*   
> 
> Daher die Frage, was fehlt Dir denn ?
> ...

 

Du kannst ja die Meldungen des scriptes zusätzlich noch in das kernel.log oder ein anderes log schreiben. Dazu müßtest Du aber das initscript umschreiben, um Dir eine passende Lösung zu machen. Die Funktionen, die die Ausgabe auf dem Bildschirm produzieren generell loggen zu lassen ist keine gute Idee, denn wenn /var noch nicht verfügbar ist und der logger nicht gestartet, dann hast Du ein Problem.

 *Quote:*   

> 
> 
> Gentoo Install Guide empfiehlt "syslog-ng". Was für ein Systemlogger würdet Ihr mir empfehlen?
> 
> 

 

Ich denke, das ist Geschmackssage. Ich persönlich verwende Metalog, brauche ich features wie z.B. remotelogging, muß ich z.B. auf syslogd zurückgreifen. Andererseits bietet metalog mir die Möglichkeit auch nach Patternmatching zu loggen, was unter Umständen recht praktisch ist.

 *Quote:*   

> 
> 
> Steve` wrote:
> 
> ```
> ...

 

In dem aktuellen verzeichnis, in dem Du Dich befindest. Du kannst aber auch dmesg als eigenes init script hinzufügen, diese dann mir rc-update zu boot hinzufügen. Du mußt nur auf die Dependencies achten. Sowie ich das getestet habe, kann ich ja eventuell nach Montag mal erklären wie und wo genau.

Wenn Du es von Hand ausführst:

dmesg |less

oder wenn du eine Datei erzeugen willst, empfiehlt sich:

dmesg > /var/log/boot.msg

 *Quote:*   

> 
> 
> Inte wrote:
> 
> ```
> ...

 

Jetzt kennst Du es ja.

----------

## benjamin200

Hallo zusammen,

erstaml vielen vielen Dank an DarKRaveR für die genau und ausführliche erläuterung von dmesg. Würde mich darüber freuen, wenn Du noch kurz über die Ergebnisse bez. der Dependencies bescheid geben würdest.

Steve` wrote:

 *Quote:*   

> 
> 
> Framebuffer = Im Kernel richtig(!) konfigurieren, dann hast Du beim Starten eine günstigere Auflösung und kannst mit der Tastatur in den Zeilen des Bootprozesses nach oben scrollen. Das ist kein extra Logfile, das irgendwo liegt, sondern es sind einfach nur die Zeilen, die beim booten auf den Bildschirm geschrieben werden.
> 
> 

 

Habe nun den Frambuffer im Kernel an und erhalten nun jeden Output via VGA  800x600. Nun stellt sich mir die Frage wie mann in der Konsole scrollen kann? Mit den Pfeiltasten geht es bei mir nicht.

Noch ne zweite Frage:

Wenn ich von der neuen 2004.0 Live CD boote, habe ich schon auf der Konsole eine Maus. Habe über diese Funktion schonmal was in einem Bericht gelesen. Wie kanne ich diese Funktion in meinem aktuellen Gentoo System aktivieren? Im moment habe ich diese Funktion nicht.

Wäre es mögilch, unter Verwendung einer Maus auf der Konsole, einen Text, z.b. ein Kommando aus einer MAN PAGE zu makieren, kopieren und dann wieder wo einzufügen? Wenn ja, wie kann ich das machen? Text makieren und dann (Tastenkombination)???

Beste Grüße,

Benjamin

----------

## DarKRaveR

gpm konfigurieren und starten.

in /etc/conf.d/gpm Protokoll etc. setzen (infos bei man gpm .... bzw. gpm --help, denke ich)

danach kannst du mit der linken taste markieren, und mit der mittleren einfügen.

Scrollen auf der Konsole Prinzipiell mit shift + Pfeiltasten.

Wegen dem dmesg Kram: Ich teste das morgen nach meiner Prüfung fabriziert habe ich es schon, da schaue ich dann mal, ob es geklappt hat. Wenn ja, schreibe ich hier die Schnipsel zusammen.

----------

## benjamin200

Hallo DarKRaveR,

hab leider Problem mit der Konfiguration von gpm. Ich mach diesbezüglich einen neuen Thread auf. 

Beste Grüße,

Benjamin

----------

## benjamin200

Hallo DarKRaveR, 

das mit gpm hat sich erledigt, funktioniert nun doch, 

und zwar wunderbar. Perfekt. Danke !!!!!

DarKRaveR wrote:

 *Quote:*   

> 
> 
> Scrollen auf der Konsole Prinzipiell mit shift + Pfeiltasten. 
> 
> 

 

Sobald ich den Rechner neustarte und mich an der Konsole mit root anmelde kann ich unter Verwendung von "shift + Pfeiltaste" nur bis zum aktuellen Login scrollen. Zu allem was vor dem Login auf die Konsole geschrieben wurde kann ich nicht erreichen. Schluss ist definitiv am Login Prompt.

Steve` wrote:

[quote]

Framebuffer = Im Kernel richtig(!) konfigurieren, dann hast Du beim Starten eine günstigere Auflösung und kannst mit der Tastatur in den Zeilen des Bootprozesses nach oben scrollen. Das ist kein extra Logfile, das irgendwo liegt, sondern es sind einfach nur die Zeilen, die beim booten auf den Bildschirm geschrieben werden.

[/quote

Kann mir jemand erklären wieso das bei mir nun doch nicht klappt 

oder gehört das so?]

----------

## benjamin200

Hallo zusammen,

kann mir jemand bezüglich scrollen auf der Konsole (unter Verwendung von Framebuffer) 

meine zuletzt gestelle Frage beantworten? Danke.

Beste Grüße,

Benjamin

----------

## benjamin200

Also ich bekomme es nicht hin. Hat jemand Erfahrung mit dem scrollen durch die Meldungen vom Bootprozess?

----------

## The Sentry

Also ich kann deine Probleme echt nicht nachvollziehen. Ich habe syslog-ng installiert (weil es so empfohlen war und ich sonst keine Ahnung hatte *g*) und meine Boot-logs sind in /var/log/messages.

Wenn ich dmesg in der Konsole eingebe, erhalte ich auch die Bootlog.

Wenn du direkt beim Booten mitschauen willst, was passiert, dann drück doch einfach mal auf Scroll-Lock. Das müsste die mehr oder weniger schnell runter rasselnden Nachrichten bremsen. mit SHIFT+Bild-Hoch bzw. SHIFT+Bild-Runter kannste du dann hoch und runter scrollen.

Einfach mal testen, viel kaputt machen kann man da nicht.

----------

## benjamin200

The Sentry wrote:

```

Also ich kann deine Probleme echt nicht nachvollziehen. Ich habe syslog-ng installiert (weil es so empfohlen war und ich sonst keine Ahnung hatte *g*) und meine Boot-logs sind in /var/log/messages. 

```

In der /var/log/messages werden z.B. keine logging Information für ASLA sowie hotplug geschrieben. Diese Meldungen hätten mich bezüglich eines derzeit schon gefixtem Problem interessiert. Soweit ich das verstanden habe, aktiviert man bei Problemen vorrübergehend das Logging in den Start Scripts z.B. in /etc/init.d/hotplug.

The Sentry wrote

```

Wenn du direkt beim Booten mitschauen willst, was passiert, dann drück doch einfach mal auf Scroll-Lock. Das müsste die mehr oder weniger schnell runter rasselnden Nachrichten bremsen. mit SHIFT+Bild-Hoch bzw. SHIFT+Bild-Runter kannste du dann hoch und runter scrollen. 

```

Danke für den Tip. Werde ich gleich mal ausprobieren, wenn meine Mühle fertig ist mit dem kompilieren von openoffice-1.1.1.

P.S. Ich setze diesen Thread auf Status "solved"

Beste Grüße und noch einen schönen Feiertag,

Benjamin

----------

