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_msg
als Befehl verwendet wird, aber ich habe keine Ahnung, was es ist.
which log_daemon_msg
und man log_daemon_msg
kam 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?
/etc/init.d/ssh
Antworten:
Das sind LSB- bezogene Funktionen. Bitte schauen Sie nach
/lib/lsb/init-functions
und / oder/etc/redhat-lsb/lsb_log_message
. Der Pfad hängt von Ihrer Distribution ab.quelle
. /lib/lsb/init-functions
an 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.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
quelle