Ich habe eine separate Datei für die Protokollierungsfunktion local7
, und diese Datei ist touch
ed und
Berechtigungengesetzt, von meinem Installer. Aber manchmal sehe ich, dass die Protokolle nicht dorthin geschrieben werden (nachdem ich eine Neuinstallation durchgeführt habe), bis ich es tue rsyslog restart
!
Ist es zwingend erforderlich,Neustart rsyslog
wenn die Protokolldatei touch
von einem anderen Programm/einer anderen Anwendung bearbeitet wird?
(Da das Installationsprogramm als ausgeführt wird root
, wird der Zeitstempel der Protokolldatei aufgrund von geändert touch
. Führt dies dazu, rsyslog
dass nichts in die Protokolldatei geschrieben wird?)
Antwort1
rsyslogd hat jede Protokolldatei kontinuierlich zum Schreiben geöffnet und weiß nicht, dass Sie die Datei herausgezogen haben. Die Datei, die Ihr Installationsprogramm entfernt hat, befindet sich noch immer in einem nicht verknüpften Zustand auf der Festplatte und wird noch immer beschrieben. Sie können rsyslogd anweisen, alle Protokolldateien erneut zu öffnen, killall -HUP rsyslogd
anstatt einen vollständigen Neustart durchzuführen.
Antwort2
Aus offensichtlichen Gründen ist rsyslog ein streng konzipiertes Programm, das seiner Konfiguration folgt. Es ist eindeutig. Wenn es möglich wäre, das zu tun, was Sie tun möchten, würde dies eine riesige Sicherheitslücke verursachen.