Folgende Anpassungen des Syslogs können auf einer Dreambox durchgeführt werden.
WICHTIG - Zur Durchführung der hier beschriebenen Änderungen sollte einer der Inhalte folgender Artikel dieses DokuWiki's bekannt sein:
WICHTIG - Kenntnisse über den Umgang mit dem Linux-Editor vi
sollten vorhanden sein !
HINWEIS - Für die Durchführung von Remote-Syslog auf einen entfernten Rechner, muss auf diesem ein Logging-Deamon wie z.B. RSyslog installiert und konfiguriert sein !!!
HINWEIS - Diese Anpassungen sind jedoch für den normalen Betrieb der Dreambox NICHT erforderlich, eher als zusätzliche Möglichkeiten zu sehen!
WICHTIG - Ab OoZooN-Image Version 3.0.1 bis OoZooN-Image Version 3.0.x ist die Installation des Paketes busybox-syslog
wie nachfolgend beschrieben erforderlich, da hier der syslog-Daemon nicht mehr automatisch installiert wurde !!!
Zuerst muss nachfolgendes Paket von nachfolgendem Link heruntergeladen werden:
HINWEIS - Je nach eingesetzter OoZooN-Image Version, kann der Download-Ort differieren - Das Paket hat den Namen
Der Download kann auch direkt auf eine Dreambox mit nachfolgendem Befehl erfolgen, bitte melden Sie sich via telnet, oder ssh auf der Dreambox an und wechseln in das Verzeichnis /tmp
mit nachfolgendem Befehl:
root@receiver:~# cd /tmp/
Der eigentlich Download erfolgt dann mit nachfolgendem Befehl:
root@receiver:/tmp# wget http://dreamboxupdate.com/opendreambox/1.6/dm7025/feed-rel_30/mipsel/busybox-syslog_1.15.3-r24.4a_mipsel.ipk Connecting to dreamboxupdate.com (82.149.226.174:80) busybox-syslog_1.15. 100% |*************************************************************************************| 2384 --:--:-- ETA
Eine Installation kann dann mit nachfolgendem Befehl durchgeführt werden:
root@receiver:/tmp# ipkg install /tmp/busybox-syslog_1.15.3-r24.4a_mipsel.ipk Installing busybox-syslog (1.15.3-r24.4a) to root... Configuring busybox-syslog Adding system startup for /etc/init.d/syslog. Starting syslogd/klogd: done
HINWEIS - Der Syslog-Daemon wird nach erfolgreicher Installation ebenfalls gleich gestartet !!!
Eine Überprüfung, ob der Syslog-Deamon läuft, kann mit nachfolgendem Befehl durchgeführt werden (nur relevanter Ausschnitt):
root@receiver:/tmp# ps auxwwf PID USER VSZ STAT COMMAND ... 21825 root 2516 S /sbin/syslogd -n -O /var/log/messages -s 32 -b 1 -m 2 21827 root 2516 S /sbin/klogd -n ...
Auf der Dreambox ist das Logging bzw. der Logging-Daemon mit dem Namen syslogd
standardmäßig bis zum OoZooN-Image 2.8.4 zwar aktiv, jedoch werden die Log-Informationen nur in einen sogenannten „buffer“-Speicher geschrieben und sind deshalb in keiner Datei zu sehen.
Die Konfiguration des syslog
-Daemons liegt im Verzeichnis
/etc
und erfolgt in der Konfigurationsdatei
/etc/syslog.conf
und sieht standardmäßig wie nachfolgend dargestellt aus:
HINWEIS - Bis Version OoZooN-Image Version 2.8.4 !!!
DESTINATION="buffer" # log destinations (buffer file remote) MARKINT=20 # intervall between --mark-- entries LOGFILE=/var/log/messages # where to log (file) REMOTE=loghost:514 # where to log (syslog remote) REDUCE=no # reduce-size logging #ROTATESIZE=0 # rotate log if grown beyond X [kByte] (incompatible with busybox) #ROTATEGENS=3 # keep X generations of rotated logs (incompatible with busybox) BUFFERSIZE=64 # size of circular buffer [kByte] FOREGROUND=no # run in foreground (don't use!)
HINWEIS - Ab Version OoZooN-Image Version 3.0.1 !!!
DESTINATION="file" # log destinations (buffer file remote) MARKINT=20 # interval between --mark-- entries [min] REDUCE=no # reduced-size logging BUFFERSIZE=64 # buffer: size of circular buffer [kByte] LOGFILE=/var/log/messages # file: where to log ROTATESIZE=32 # file: rotate log if grown beyond X [kByte] (busybox 1.2+) ROTATEGENS=1 # file: keep X generations of rotated logs (busybox 1.2+) REMOTE=loghost:514 # remote: where to log FOREGROUND=no # run in foreground (don't use!)
Um das wegschreiben von Log-Informationen in die Standard-Log-Datei zu aktivieren, sind folgende Änderungen, welche wie folgt gekennzeichnet sind, durchzuführen:
# Tachtler
Hier die geänderte Konfigurationsdatei /etc/syslog.conf
mit aktivierten Logging in die Standard-Log-Datei
/var/log/messages
HINWEIS - Bis Version OoZooN-Image Version 2.8.4 !!!
# Tachtler # default: DESTINATION="buffer" # log destinations (buffer file remote) DESTINATION="file" # log destinations (buffer file remote) MARKINT=20 # intervall between --mark-- entries LOGFILE=/var/log/messages # where to log (file) REMOTE=loghost:514 # where to log (syslog remote) REDUCE=no # reduce-size logging #ROTATESIZE=0 # rotate log if grown beyond X [kByte] (incompatible with busybox) #ROTATEGENS=3 # keep X generations of rotated logs (incompatible with busybox) BUFFERSIZE=64 # size of circular buffer [kByte] FOREGROUND=no # run in foreground (don't use!)
HINWEIS - Ab Version OoZooN-Image Version 3.0.1 !!!
DESTINATION="file" # log destinations (buffer file remote) MARKINT=20 # interval between --mark-- entries [min] REDUCE=no # reduced-size logging BUFFERSIZE=64 # buffer: size of circular buffer [kByte] LOGFILE=/var/log/messages # file: where to log ROTATESIZE=32 # file: rotate log if grown beyond X [kByte] (busybox 1.2+) ROTATEGENS=1 # file: keep X generations of rotated logs (busybox 1.2+) REMOTE=loghost:514 # remote: where to log FOREGROUND=no # run in foreground (don't use!)
Um die Änderungen an der Konfigurationsdatei /etc/syslog.conf
wirksam werden zu lassen, ist ein Neustart des syslog
-Deamons mit nachfolgendem Befehl erforderlich:
root@receiver:~# /etc/init.d/syslog restart Stopping syslogd/klogd: stopped syslogd (pid 15793). stopped klogd (pid 15795). done Starting syslogd/klogd: done
Anschließend kann die so neu entstandene Standard-Log-Datei mit nachfolgendem Befehl eingesehen werden:
root@receiver:~# less /var/log/messages Apr 8 22:47:31 System log daemon exiting. Apr 8 22:47:32 syslogd started: BusyBox v1.01 (2009.11.06-06:23+0000) Apr 8 22:47:32 receiver kernel: klogd started: BusyBox v1.01 (2009.11.06-06:23+0000)
oder sogar mit nachfolgendem Befehl in Echtzeit mitverfolgt werden:
root@receiver:~# tail -f /var/log/messages Apr 8 22:47:31 System log daemon exiting. Apr 8 22:47:32 syslogd started: BusyBox v1.01 (2009.11.06-06:23+0000) Apr 8 22:47:32 receiver kernel: klogd started: BusyBox v1.01 (2009.11.06-06:23+0000)
Um das wegschreiben von Log-Informationen auf einen Remote-Host (entfernten Log-Server) zu aktivieren, sind folgende Änderungen, welche wie folgt gekennzeichnet sind, durchzuführen:
# Tachtler
Hier die geänderte Konfigurationsdatei /etc/syslog.conf
mit aktivierten Logging auf einen Remote-Host (entfernten Log-Server) mit der
192.168.0.1
514
HINWEIS - Bis Version OoZooN-Image Version 2.8.4 !!!
# Tachtler # default: DESTINATION="buffer" # log destinations (buffer file remote) DESTINATION="remote" # log destinations (buffer file remote) MARKINT=20 # intervall between --mark-- entries LOGFILE=/var/log/messages # where to log (file) # Tachtler # default: REMOTE=loghost:514 # where to log (syslog remote) REMOTE=192.168.0.1:514 # where to log (syslog remote) REDUCE=no # reduce-size logging #ROTATESIZE=0 # rotate log if grown beyond X [kByte] (incompatible with busybox) #ROTATEGENS=3 # keep X generations of rotated logs (incompatible with busybox) BUFFERSIZE=64 # size of circular buffer [kByte] FOREGROUND=no # run in foreground (don't use!)
HINWEIS - Ab Version OoZooN-Image Version 3.0.1 !!!
# Tachtler # default: DESTINATION="file" # log destinations (buffer file remote) DESTINATION="remote" # log destinations (buffer file remote) MARKINT=20 # interval between --mark-- entries [min] REDUCE=no # reduced-size logging BUFFERSIZE=64 # buffer: size of circular buffer [kByte] LOGFILE=/var/log/messages # file: where to log ROTATESIZE=32 # file: rotate log if grown beyond X [kByte] (busybox 1.2+) ROTATEGENS=1 # file: keep X generations of rotated logs (busybox 1.2+) # Tachtler # default: REMOTE=loghost:514 # remote: where to log REMOTE=192.168.0.1:514 # remote: where to log FOREGROUND=no # run in foreground (don't use!)
Um die Änderungen an der Konfigurationsdatei /etc/syslog.conf
wirksam werden zu lassen, ist ein Neustart des syslog
-Deamons mit nachfolgendem Befehl erforderlich:
root@receiver:~# /etc/init.d/syslog restart Stopping syslogd/klogd: stopped syslogd (pid 15793). stopped klogd (pid 15795). done Starting syslogd/klogd: done
HINWEIS - Ein Logging auf einen Remote-Host (entfernten Log-Server) muss auf diesem überprüft werden !!!
HINWEIS - Siehe auch nachfolgenden Artikel dieses DokuWiki's aus dem Bereich Linux –> RSyslog