BEZEICHNUNG¶
start-stop-daemon - startet und stoppt System-Daemon-Programme
ÜBERSICHT¶
start-stop-daemon [
Option ?]
Befehl
BESCHREIBUNG¶
start-stop-daemon wird zur Steuerung der Erzeugung und Beendigung von
Prozessen auf Systemebene verwendet. Durch die Verwendung einer der
Abgleich-Optionen kann
start-stop-daemon so konfiguriert werden, dass
er existierende Instanzen von einem laufenden Prozess finden kann.
Hinweis: Falls
--pidfile nicht angegeben ist, verhält sich
start-stop-daemon ähnlich zu
killall(1).
start-stop-daemon wird die Prozesstabelle nach Prozessen durchsuchen,
die auf den Prozessnamen, uid und/oder gid (falls angegeben) passen. Jeder
passende Prozess wird
--start daran hindern, den Daemon zu starten.
Allen passenden Prozessen wird das TERM-Signal (oder das mit
--signal
oder
--retry angegebene) geschickt, falls
--stop angegeben ist.
Für Daemons die langlebige Kinder haben, die ein
--stop
überleben müssen, müssen Sie eine PID-Datei angeben.
BEFEHLE¶
- -S, --start [--] Argumente
- Prüfe auf Existenz eines angegebenen Prozesses. Falls
ein solcher Prozess existiert führt start-stop-daemon nichts
aus und beendet sich mit Fehlerstatus 1 (0, falls --oknodo
angegeben wurde). Falls ein solcher Prozess nicht existiert, dann startet
es eine Instanz, entweder unter Verwendung des ausführbaren
Programms, das mittels --exec (oder, falls angegeben, mittels
--startas) spezifiziert wurde. Jedes weitere auf der Kommandozeile
nach -- angegebene Argument wird unverändert an das zu
startende Programm weitergegeben.
- -K, --stop
- Überprüft auf die Existenz eines speziellen
Prozesses. Falls ein solcher Prozess existiert, dann sendet
start-stop-daemon das durch --signal angegebene Signal und
beendet sich mit Fehlerstatus 0. Falls kein solcher Prozess existiert,
dann beendet sich start-stop-daemon mit Fehlerstatus 1 (0 falls
--oknodo angegeben ist). Falls --retry angegeben wurde, wird
start-stop-daemon überprüfen, ob der/die Prozess(e)
beendet wurden.
- -T, --status
- Überprüft auf die Existenz eines bestimmten
Prozesses und liefert den Exit-Status-Code entsprechend der »LSB Init
Script Actions« zurück.
- -H, --help
- Zeige Bedienungsinformationen und beendet sich.
- -V, --version
- Zeige die Programmversion und beendet sich.
ABGLEICH-OPTIONEN¶
- -p, --pidfile pid-Datei
- Prüfe, ob ein Prozess pid-Datei erstellt hat.
Hinweis: Wird diese Abgleichoption alleine verwandt, könnte auf nicht
geplante Prozesse eingewirkt werden, falls der alte Prozess beendet wurde,
ohne dass er pid-Datei entfernen konnte.
- -x, --exec Programm
- Überprüfe auf Prozesse, die Instanzen von diesem
Programm sind. Das Argument Programm sollte ein absoluter Pfadname
sein. Hinweis: Dies könnte bei interpretierten Skripten nicht wie
geplant funktionieren, da das Programm auf den Interpreter zeigt.
Berücksichtigen Sie, dass dies auch auf Prozesse, die innerhalb einer
Chroot laufen, passen könnte, daher könnten andere
Abgleichrestriktionen benötigt werden.
- -n, --name Prozessname
- Überprüfe auf Prozesse mit dem Namen
Prozessname. Der Prozessname ist normalerweise der Dateiname
des Prozesses, er könnte aber vom Prozess selbst geändert worden
sein. Hinweis: Auf den meisten Systemen wird diese Information aus dem
»comm«-Namen des Prozesses aus dem Kernel ausgelesen. Dieser hat
typischerweise eine recht kurze Längenbegrenzung (mehr als 15 Zeichen
anzunehmen ist nicht portabel).
- -u, --user
Benutzername|uid
- Überprüfe auf Prozesse die dem mit
Benutzername oder uid spezifizierten Benutzer gehören.
Hinweis: Wird diese Abgleichoption alleine verwandt, wird auf alle
Prozesse, die auf den Benutzer passen, eingewirkt.
OPTIONEN¶
- -g, --group Gruppe|gid
- Wechsle zum Starten des Prozesses zur Gruppe oder
gid.
- -s, --signal Signal
- Mit --stop wird das an den zu beendenden Prozess zu
sendende Signal spezifiziert (standardmäßig TERM).
- -R, --retry
Zeitüberschreitung|Plan
- Mit --stop spezifiziert, dass
start-stop-daemon überprüfen soll, ob der Prozess (die
Prozesse) sich beenden. Es überprüft wiederholt, ob passende
Prozesse laufen, bis dies nicht mehr der Fall ist. Falls sich die Prozesse
nicht beenden, werden weitere im »Plan« angegebene Aktionen
durchgeführt.
Falls Zeitüberschreitung anstelle von Plan spezifiziert
wird, dann wird der Plan
Signal/Zeitüberschreitung
/KILL/Zeitüberschreitung verwendet, wobei Signal
das mit --signal spezifizierte Signal ist.
Plan ist eine Liste von mindestens zwei durch Schrägstriche
(/) getrennten Punkten; jeder Punkt kann aus
-Signalnummer oder [ -]Signalname bestehen,
was bedeutet, dass dieses Signal gesendet werden soll, oder aus
Zeitüberschreitung, was bedeutet, dass soviele Sekunden auf
das Beenden von Prozessen gewartet werden soll, oder aus forever
was bedeutet, den Rest des Plans falls notwendig für immer zu
wiederholen.
Falls das Ende des Plans erreicht wird und forever nicht spezifiziert
wurde, dann beendet sich der start-stop-daemon mit dem Fehlerstatus
2. Falls ein Plan spezifiziert wurde, dann wird jedes mit --signal
spezifizierte Signal ignoriert.
- -a, --startas Pfadname
- Mit --start wird der über Pfadname
spezifizierte Prozess gestartet. Falls nicht angegeben, werden
standardmäßig die an --exec übergebenen Argumente
verwendet.
- -t, --test
- Gebe die Aktionen aus, die erledigt würden und setze
die entsprechenden Rückgabewerte, führe aber keine Aktionen
durch.
- -o, --oknodo
- Liefert den Rückgabewert 0 anstatt 1 falls keine
Aktionen ausgeführt wurden (würden).
- -q, --quiet
- Gebe keine informativen Meldungen aus, zeige nur
Fehlermeldungen an.
- -c , --chuid
Benutzername|uid[:Gruppe|gid]
- Wechsele vor dem Start des Prozesses zu diesem
Benutzername/uid. Sie können durch Anhängen von : auch
die Gruppe spezifizieren, in diesem Fall wird die Gruppe oder gid wie bei
dem »chown«-Befehl ( Benutzer:Gruppe)
angegeben. Falls ein Benutzer ohne Gruppe angegeben ist, wird die
primäre GID für diesen Benutzer verwandt. Wenn Sie diese Option
verwenden, müssen Sie daran denken, dass die primäre und
zusätzliche Gruppen auch gesetzt werden, selbst wenn die Option
--group nicht angegeben wird. Die Option --group ist nur
für Gruppen, in denen der Benutzer normalerweise kein Mitglied ist
(wie das Hinzufügen von pro-Prozess Gruppenmitgliedschaften für
generische Benutzer wie nobody).
- -r, --chroot Wurzel
- Chdir und chroot vor dem Start des Prozesse zu
Wurzel. Bitte beachten Sie, dass die PID-Datei auch nach dem chroot
geschrieben wird.
- -d, --chdir Pfad
- Chdir vor dem Starten des Prozesses zu Pfad. Dies
wird, falls die -r|--chroot Option gesetzt ist, nach dem
chroot durchgeführt. Falls nicht angegeben, wird start-stop-daemon
vor dem Prozess-Start in das Wurzelverzeichnis wechseln.
- -b, --background
- Typischerweise verwendet für Programme, die sich nicht
selbständig ablösen. Diese Option zwingt
start-stop-daemon vor dem Start des Prozesses einen Fork
durchzuführen, und zwingt diesen dann in den Hintergrund. WARNUNG:
start-stop-daemon kann nicht den Rückgabewert
überprüfen, falls der Prozess aus irgendeinem Grund nicht
startet. Dies ist ein letztes Mittel und ist nur für Programme
gedacht, bei denen das selbstständige Forken keinen Sinn ergibt oder
wo es nicht sinnvoll ist, den Code hierfür hinzuzufügen.
- -C, --no-close
- Keinen Dateideskriptor schließen, wenn ein Daemon in
den Hintergrund gezwungen wird. Dies wird zu Fehlersuchzwecken angewandt
oder um Dateideskriptoren zur Protokollierung der Prozessausgabe
umzuleiten. Nur relevant bei der Verwendung von --background.
- -N, --nicelevel Ganzzahl
- Dies ändert die Priorität des Prozesses bevor er
gestartet wird.
- -P, --procsched
Strategie:Priorität
- Dies ändert die Prozesssteuerstrategie (»process
scheduler policy«) und die Priorität des Prozesses, bevor dieser
gestartet wird. Die Priorität kann optional festgelegt werden, indem
ein : gefolgt von einem Wert angegeben wird. Die Standard-
Priorität beträgt 0. Die derzeit unterstützten Werte
für die Strategie lauten other, fifo und
rr.
- -I, --iosched
Klasse:Priorität
- Dies ändert die IO-Steuerklasse (»IO scheduler
class«) und die Priorität des Prozesses, bevor dieser gestartet
wird. Die Priorität kann optional festgelegt werden, indem ein
: gefolgt von einem Wert angegeben wird. Die Standard-
Priorität beträgt 4, außer Klasse lautet
idle, dann beträgt sie immer 7. Die derzeit unterstützten
Werte für die Klasse lauten idle, best-effort
und real-time.
- -k, --umask Maske
- Dies setzt die umask des Prozesses bevor er gestartet
wird.
- -m, --make-pidfile
- Verwendet, wenn ein Programm gestartet wird, das keine
eigene PID-Datei anlegt. Diese Option sorgt dafür, dass
start-stop-daemon die mit --pidfile referenzierte Datei
anlegt und die PID kurz vor der Ausführung des Prozesse hineinlegt.
Beachten Sie, dass die Datei nicht entfernt wird, wenn das Programm
beendet wird. HINWEIS: Diese Funktion könnte in nicht allen
Fällen funktionieren. Insbesondere wenn das auszuführende
Programm sich vom Hauptprozess forkt. Deshalb ist diese Option
normalerweise nur in Kombination mit der Option --background
sinnvoll.
- -v, --verbose
- Gibt ausführliche informative Meldungen aus.
RÜCKGABEWERT¶
- 0
- Die angeforderte Aktion wurde durchgeführt. Falls
--oknodo angegeben wurde, kann es auch sein, dass nicht
durchgeführt wurde. Das kann passieren, wenn --start angegeben
wurde und der passende Prozess bereits lief oder wenn --stop
angegeben wurde und es keinen passenden Prozess gab.
- 1
- Falls --oknodo nicht angegeben war und nichts
durchgeführt wurde.
- 2
- Falls --stop und --retry angegeben waren,
aber das Ende des Plans erreicht wurde und die Prozesse noch liefen.
- 3
- Jeder andere Fehler.
Bei der Verwendung des Befehls
--status werden die folgenden Statuscodes
zurückgeliefert:
- 0
- Programm läuft.
- 1
- Programm läuft nicht und die PID-Datei existiert.
- 3
- Programm läuft nicht.
- 4
- Programmstatus kann nicht bestimmt werden.
BEISPIEL¶
Starte den Daemon
food falls noch keiner läuft (ein Prozess mit
Namen food, der als Benutzer food mit PID in food.pid läuft):
-
start-stop-daemon --start --oknodo --user food --name food \
--pidfile /run/food.pid --startas /usr/sbin/food \
--chuid food -- --daemon
Schicke
SIGTERM an
food und warte bis zu fünf Sekunden auf
sein Beenden:
-
start-stop-daemon --stop --oknodo --user food --name food \
--pidfile /run/food.pid --retry 5
Vorführung eines angepassten Plans zum Beenden von
food:
-
start-stop-daemon --stop --oknodo --user food --name food \
--pidfile /run/food.pid --retry=TERM/30/KILL/5
ÜBERSETZUNG¶
Die deutsche Übersetzung wurde 2004, 2006-2015 von Helge Kreutzmann
<debian@helgefjell.de>, 2007 von Florian Rehnisch <eixman@gmx.de>
und 2008 von Sven Joachim <svenjoac@gmx.de> angefertigt. Diese
Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public
License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE
HAFTUNG.