Holen Sie sich Fehlermeldungen vom Server

1189
Nobody

Ich möchte einen Dienst über xinetd starten, aber es funktioniert nicht. Das heißt, sofort nach dem Start des Dienstes wird der Dienst erneut gestoppt:

Sep 23 19:16:39 sektor xinetd[556]: START: service pid=559 from=xx.xx.xx.xx Sep 23 19:16:39 sektor xinetd[556]: EXIT: service status=1 pid=559 duration=0(sec) 

Gibt es eine Möglichkeit, Fehlermeldungen vom Dienst zu erhalten, um das Problem zu ermitteln?

Ich habe etwas für x11vnc gefunden, das verwendet werden soll -o /path/to/separate/logfile, aber ich würde gerne wissen, ob dies mit jedem (x) inetd-fähigen Dienst funktioniert oder ob es selbst eine Flagge von xinetd ist.

0
`-o` ist ein Argument speziell für den` x11vnc`-Befehl. grawity vor 12 Jahren 0
@grawity es liegt also an den Diensten, die Protokollierung während (x) inetd auszuführen? Nobody vor 12 Jahren 0
Es ist * immer * den Diensten überlassen - die meisten verwenden syslog, einige protokollieren sich in Dateien, andere nirgends - unabhängig von xinetd. grawity vor 12 Jahren 0
@ grawity: Ok, vielleicht war das Logging das falsche Wort. Wenn ich zum Beispiel x11vnc über die Befehlszeile starte, wird mir auf stdout viel ausgegeben. Unter xinetd ist dies natürlich nicht möglich, da der Standard für die Kommunikation reserviert ist. Ein Dienst, der unter xinetd läuft, sollte also immer die Möglichkeit bieten, die Ausgabe zu erhalten, die "normal" auf stdout wäre. Nobody vor 12 Jahren 0
In einem solchen Fall sollte ein ordnungsgemäß geschriebener Dienst Syslog (oder, falls erforderlich, seine eigene Protokolldatei) verwenden. Übrigens verwenden die meisten Programme * stderr * für solche Nachrichten. Eine intelligentere Version von inetd (wie systemd) könnte stderr auf ein Protokoll umleiten, während stdin / out mit dem Socket erhalten bleibt. grawity vor 12 Jahren 0

1 Antwort auf die Frage

0
ercpe

Werfen Sie einen Blick in /var/log/messagesoder in die dienstspezifische Protokolldatei ( /var/logsofern vorhanden).

Welchen Dienst versuchen Sie zu starten?

Es ist x11vnc, und die Zeilen, die ich gepostet habe, waren die einzigen, die ich im Protokoll gefunden habe. Die Nachrichtendatei sagt aber auch nichts aus. Nobody vor 12 Jahren 0
Versuchen Sie, xinetd mit der Option -d zu starten. Die Manpage sagt: "Aktiviert den Debug-Modus. Dies erzeugt eine Menge Debugging-Ausgaben und ermöglicht die Verwendung eines Debuggers für xinetd." Dies sollte Ihnen einen Hinweis geben. ercpe vor 12 Jahren 0