# Ist syslog-ng auf einer sd-card sinnvoll?

## Gucky_der_Mausbiber

Nabend,

ich installiere gerade gentoo auf einer kleinen arm-Maschine. Das ganze System läuft dabei von einer 2GB SD-Card und bisher habe ich noch keinen System-Logger installiert. Naja, somit sehe ich aber auch nicht wirklich was wo und wie schief läuft, deshalb würde ich schon gerne wieder in irgendeiner Art "logging" betreiben.

Im Normalfall installiere ich dafür syslog-ng, aller dings bin ich mir hier jetzt nicht sicher weil es sich ja um eine SD-Card handelt und die ja nur eine begrenzte Anzahl von Schreibzyklen durchhalten. Und wenn man jetzt bedenkt das syslog-ng quasi konsequent auf die SD-Card schreiben würde bin ich mir nicht sicher ob die dann nicht ziemlich schnell kaputt ist.

Deswegen wollte ich euch mal fragen ob ich damit Recht habe, bzw. was es den sonst für möglichkeiten gibt möglichst "schreibschonenden" die Systemmeldungen mitzuloggen?

Danke

----------

## Finswimmer

Es gibt die Möglichkeit den Output in den RAM zu schreiben und beim Herunterfahren die Datei einmalig zu schreiben.

Inwieweit das dann nützlich ist, wenn der PC sich aufhängt, etc. musst du selbst drüber nachdenken...

Tobi

----------

## Raze

Wie wäre es mit einem FiFo-Log? Würde die Schreibzugriffe sparen, du hast aber dennoch, wenn du dich mit tail dran hängst ein paar Infos. Damit kannst du natürlich nix dauerhaft loggen, da würd ich bei ner SD-Card eben wegen der Problematik der Schreibzyklen von abraten. Wenn du aus Analysezwecken dann wissen willst, kannst du den Syslogger starten - ansonsten aus lassen.

Edit:

.. und du sparst dir gleich das logrotate  :Wink: 

----------

## Gucky_der_Mausbiber

Erstmal danke für die Antworten.

Das loggen in den RAM und einmaliges Schreiben beim shutdown halte ich nicht für so sinnvoll, da ich ja nicht wirklich viel RAM zur Verfügung habe und den nicht unötig voll schiessen will.

Das FiFo allerdings würde was bringen, wenn ich das richtige verstanden habe wir hier auch in den RAM geloggt, aber eben nicht die ganze Zeit sondern immer nur ne bestimmte Anzahl an Messages und wenn die voll sind fliegt die erste wieder raus, richtig?

Also das System würde mir dann schon weiterhelfen, nur wie realisiere ich sowas?

----------

## Raze

Du löscht die Logfiles, die du durch FiFo-Logs ersetzen möchtest, und legst diese mit "mkfifo" neu an.

```

rm /var/log/messages

mkfifo /var/log/messages

```

That it  :Wink:  Was das Buffering der Messages im Ram angeht kann ich dir leider nicht weiter helfen. Wird aber wohl schonender sein, als die Logs im Ram zu halten.

----------

## mrsteven

Rausfliegen tut da nix, aber dein syslog-ng wird vermutlich warten, bis du aus der vollen FIFO liest, d.h. solange "hängen". Wie viel in so eine Pipe normalerweise rein geht kann ich dir aber auch nicht sagen, schätzungsweise ein paar kB.

----------

## Raze

Mal ein Schuss in blaue, bin mir nicht 100% sicher ob die beiden Dinge zusammenhängen:

```

make menuconfig

-> General Setup

->-> (N) Kernel log buffer size (16 => 64KB, 17 => 128KB)

```

In der .config.gz ist es als

 *Quote:*   

> 
> 
> CONFIG_LOG_BUF_SHIFT=N
> 
> 

 

geführt.

----------

## ChrisJumper

Hi Gucky_der_Mausbiber,

du hast jetzt nicht geschrieben wie du auf das System zugreifst. Wenn du allerdings eine Netzwerkanbindung hast, kannst du das Logging  ja auch "Remote" erledigen lassen. Syslog lässt sich ja auch so einrichten das du einen Server hast der der für deine Rechner im Netzwerk zentral loggt.

Wie das geht stand glaub ich im Sicherheits-Handbuch.

Viel Spaß

----------

## Gucky_der_Mausbiber

@ChrisJumper

Ja, das ist eigentlich die Idee überhaupt. Da ich während der Entwicklung sowieso immer per Ethernet verbunden bin lass ich syslog einfach auf meinem Desktop loggen, hmm, gleich mal schauen ob das funktioniert ....

----------

## mrsteven

 *Raze wrote:*   

> Mal ein Schuss in blaue, bin mir nicht 100% sicher ob die beiden Dinge zusammenhängen:
> 
> ```
> 
> make menuconfig
> ...

 

Nur der Vollständigkeit halber: Das betrifft ausschließlich den Puffer für das Kernellog und hat mit der FIFO-Größe nichts zu tun. Hier geht es nur darum, wie viel an Kernelmeldungen zwischengespeichert wird, bis das ganze vom System-Logger abgeholt wird. Stellt man hier einen zu kleinen Wert ein, dann gehen z.B. ein paar Bootmeldungen verloren, da dieser Ringpuffer voll läuft, bevor der Logger gestartet wird.

----------

