PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : zusätzlichen syslog socket erstellen



boSen
02.11.10, 17:03
Hallo,

ich habe das Problem das syslog automatisch keinen zusätzlichen Socket anlegt.

systeminfos:

centos 5 - 2.6.18-194.17.1.el5
sysklogd.x86_64 - 1.4.1

Folgende Konfiguration hab ich vorgenommen um automatisch z.B. beim Systemstart einen Socket erzeugen zu lassen:

- unter /etc/sysconfig/syslog


# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
#SYSLOGD_OPTIONS="-m 0"
SYSLOGD_OPTIONS="-m 0 -a /data/testsocket"
# Options to klogd
# -2 prints all kernel oops messages twice; once for klogd to decode, and
# once for processing with 'ksymoops'
# -x disables all klogd processing of oops messages entirely
# See klogd(8) for more details
KLOGD_OPTIONS="-x"
#
SYSLOG_UMASK=077
# set this to a umask value to use for all log files as in umask(1).
# By default, all permissions are removed for "group" and "other".


Der Syslog-Daemon scheint auch mit der richtigen Option zu starten:



[root@test]# ps -ef | grep syslog

root 4173 1 0 17:25 ? 00:00:00 syslogd -m 0 -a /data/testsocket

aber er legt keinen Socket an dem gewünschten Ort an :)

Wenn ich in der /etc/sysconfig/syslog den Eintrag


von
SYSLOGD_OPTIONS="-m 0 -a /data/testsocket"

auf
SYSLOGD_OPTIONS="-m 0 -a /dev/testsocket"

ändere, wird der zusätzliche Socket erfolgreich unter /dev angelegt. Das kommt leider für mich nicht in Frage, da ich keinen Hardlink auf diesen Socket setzen kann sobald dieser unter /dev angelegt wird.

Wenn ich syslog manuell über die Console mit der Option "-a" starte, legt er erfolgreich einen zusätzlichen Socket am gewünschten Ort an:

syslogd -a /data/testsocket

Ich hab versucht die Option "-a /data/testsocket" im Script /etc/init.d/syslog
mit anzugeben, was aber auch nicht zum gewünschten erfolg führte ...

Warum erzeugt er beim manuellen Aufruf den Socket an der gewünschten Stelle, aber nicht bei Angabe in der Config File?
Verzeichnis Berechtigungen müssten auch stimmten ...

Hat jemand eine Idee warum der kram nicht funktioniert?
Oder mach ich grundlegend etwas falsch?

temir
04.11.10, 13:29
Zum einen, kann man im /etc/init.d/syslog den Trace einschalten mittels:


set -x

zum anderen, den debug-Level hochsetzen, um dem unterschiedlichen Verhalten auf die Spur zu kommen.

jeebee
04.11.10, 18:27
Ist denn /data schon gemountet wenn das syslog init-Skript läuft?

boSen
05.11.10, 06:19
Hallo,

danke für die Antworten!

Das mit dem Debug/Trace ist eine gute idee.

Das Verzeichnis /data ist gemountet.
Sollte also keine Probleme machen ...

Ich hab das ganze mal auf einem anderen System getestet. Und siehe da ... es funktioniert.

Scheint an dem System zu liegen ... vielleicht liegts an einer alten rsyslog Installation (Dienst ist deaktiviert).

Naja hauptsache es funtkioniert!
Danke und Grüße!