[Eisfair] Frage zu syslogd

Nelson Matias nelson at anires.de
Fr Mär 29 21:36:20 CET 2024


Hallo Marcus,

Marcus Röckrath schrieb am Fri, 29 Mar 2024 17:51:38 +0100:
>
>1. Erzeugen der Pipe, was man sich von systemd beim Boot erledigen lassen
>kann.
>
>Dazu legen wir in /usr/lib/tmpfiles.d z. B. die Datei syslogpipe.conf mit
>folgendem Inhalt an:
>
>-------------------------------------------------------
>#
># See tmpfiles.d(5) for details
>#
># Type Path        Mode User Group Age Argument
>
>p /run/syslogpipe 0664 root root
>-------------------------------------------------------

Das hab ich gemacht. Wie Holger angemerkt hat hab ich die Datei nach
/etc/tmpfiles.d geschoben.
Zum testen ohne reboot hab ich auch die pipe manuell angelegt.

>2. Nun brauchen wir noch einen Service, der dien Skript startet:
>
>In /usr/lib/systemd/system legen wir nun ein service-File syslogpipe.service
>an; Inhalt etwa so:
>
>-------------------------------------------------------
>[Unit]
>Description=SysLog Pipe analyzer
>After=syslogd.service
>Requires=syslogd.service
>
>[Service]
>Type=oneshot
>RemainAfterExit=yes
>ExecStart=/path/zu/deinem/script.sh
>
>[Install]
>WantedBy=multi-user.target
>-------------------------------------------------------

hier auch /etc/systemd/system genommen. 

>3. Damit der service beim Boot automatisch gestartet wird:
>
>service daemon-reload
>service enable syslogpipe

gemacht ... kommen aber keine Meldungen.
Ich dachte aber bei enable sollte eine Meldung kommen?

>4. Sofortiges Starten:
>
>service start syslogpipe

gemacht. Auch hier scheint nix zu passieren.

>Du musst natürlich in der Syslog-Konfiguration die Ziele (Target) auf die
>Pipe setzen, wobei die Pipe möglichst dann schon existieren sollte.

Ja daran hab ich auch gedacht. Und ich hab das script auch auf
/run/syslogpipe abgeändert.

ABER:
Das script wird nicht gestartet. Der service läuft nicht. 
Ich kann das mit btop kontrollieren.
Ein restart von syslogd klappt ich sehe der restart in
/var/log/messages und auch ohne Fehlermeldung, also findet er auch die
pipe. Die ist auch schon in Gebrauch, weil ein "cat < /run/syslogpipe"
zeigt mir die Meldungen.

Warum wird also das script nicht über die unit gestartet? Wenn ich das
manuell aufrufe klappte es und sortiert die Meldungen in die
entsprechenden Dateien.


>-- 
>Gruß Marcus
>[eisfair-Team]


-- 

Gruß
Nelson

-- 
Nelson Matias



Mehr Informationen über die Mailingliste Eisfair