Was ist log_daemon_msg?

15

Ich habe nachgesehen /etc/init.d/ssh, um eine Vorstellung davon zu bekommen, wie ein "richtiger" Sys-Daemon beim Booten ausgeführt wird (ich versuche svnserve, dieser Liste etwas hinzuzufügen ). Ich habe gesehen, dass dies log_daemon_msgals Befehl verwendet wird, aber ich habe keine Ahnung, was es ist.

which log_daemon_msgund man log_daemon_msgkam leer auf.

Beispiel:

log_daemon_msg "Starting OpenBSD Secure Shell server" "sshd" || true
if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then
    log_end_msg 0 || true
else
    log_end_msg 1 || true
fi

Wie funktioniert das? Ich habe versucht herumzugoogeln, aber die einzigen Dinge, die ich finden konnte, waren Fragen darüber, wo es seine Nachrichten aufzeichnet, was nutzlos ist, da ich kaum weiß, wie man es benutzt oder was es überhaupt ist - ein Befehl, ein eingebautes oder etwas anderes?

Dubslow
quelle
1
Komplette Datei anzeigen: Es ist wahrscheinlich, dass diese Funktion in einer Datei definiert ist, die am Anfang von/etc/init.d/ssh
Matteo

Antworten:

19

Das sind LSB- bezogene Funktionen. Bitte schauen Sie nach /lib/lsb/init-functionsund / oder /etc/redhat-lsb/lsb_log_message. Der Pfad hängt von Ihrer Distribution ab.

dchirikov
quelle
2
Vielen Dank! Mein Googeln hatte ergeben, dass es irgendwie mit LSB zusammenhängt, und ich habe mir die Wiki-Seite tatsächlich angesehen, aber es war nicht besonders nützlich. Danke für den Weg! (Es war der
erste
Wow, ich vermisse ihn nur wenig . /lib/lsb/init-functionsan der Spitze des Init - Skript , das ich war die Analyse ... Scheine , wie es besser ist , zu schreiben , source <...>statt , . <...>wenn Sie das Skript wollen einfach analysiert werden.
Tomasz Gandor
-2

Ich habe kein BSD und habe es nie benutzt ... aber log_daemon_message muss auf jeden Fall eine Shell-Funktion sein. Schauen Sie darüber hinaus auf Aussagen wie:

. ./funktionen

Dadurch werden alle Funktionen in der Funktionsdatei abgerufen. Das andere, was Sie tun können, ist, mit find nach der spezifischen Funktion zu suchen:

find / etc -type f -exec grep -li log_daemon_msg {} \;

Und sehen Sie, was in den Dateien ist. Wie gesagt, ich habe kein BSD, aber Forschung macht Spaß!

Prost und viel Glück

Juan Breinlinger
quelle
Es ist kein BSD, sondern ein Ubuntu 12.04 Server. Es ist nur so, dass ssh ein BSD-Programm ist. @ Matteo, ich habe die Datei überprüft, es ist keine lokal definierte Funktion. Ich habe nicht darüber nachgedacht, welche anderen Dateien es lädt, das mache ich jetzt. Der Grund, warum ich hier gefragt habe, ist, dass ein Ergebnis darauf hindeutet, dass es sich um eine Familie allgemeiner / weit verbreiteter Funktionen handelt.
Dubslow