Linux repositories inspector
1.20.0

dpkg

Debian package management system

dpkg-lang

Translations for package dpkg

BEZEICHNUNG

start-stop-daemon - startet und stoppt System-Daemon-Programme

\(:UBERSICHT

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 --pid oder --pidfile nicht angegeben ist, verh\(:alt sich start-stop-daemon \(:ahnlich zu killall(1). start-stop-daemon wird die Prozesstabelle nach Prozessen durchsuchen, die auf den Prozessnamen, die Eltern-PID, 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\(:ur Daemons die langlebige Kinder haben, die ein --stop \(:uberleben m\(:ussen, m\(:ussen Sie eine PID-Datei angeben.

BEFEHLE

-S, --start [--] Argumente
Pr\(:uft auf Existenz eines angegebenen Prozesses. Falls ein solcher Prozess existiert f\(:uhrt 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\(:uhrbaren Programms, das mittels --exec (oder, falls angegeben, mittels --startas) spezifiziert wurde. Jedes weitere auf der Befehlszeile nach -- angegebene Argument wird unver\(:andert an das zu startende Programm weitergegeben.
-K, --stop Pr\(:uft 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 \(:uberpr\(:ufen, ob der/die Prozess(e) beendet wurden.
-T, --status
Pr\(:uft auf die Existenz eines bestimmten Prozesses und liefert den Exit-Status-Code entsprechend der \(BqLSB Init Script Actions\(lq zur\(:uck (seit Version 1.16.1).
-H, --help Gibt eine Meldung zur Verwendung aus und beendet das Programm.
-V, --version
Zeigt die Programmversion und beendet sich.

OPTIONEN

Abgleichoptionen

--pid PID
Pr\(:uft auf einen Prozess mit der angegebenen PID (seit Version 1.17.6). Die PID muss eine Zahl gr\(:o\(sser Null sein.
--ppid PPID
Pr\(:uft auf einen Prozess mit der angegebenen Eltern-PID PPID (seit Version 1.17.7). Die PPID muss eine Zahl gr\(:o\(sser Null sein.
-p, --pidfile PID-Datei
Pr\(:uft, ob ein Prozess die Datei PID-Datei angelegt hat.
Hinweis: Wird diese Abgleichoption alleine verwandt, k\(:onnte auf nicht geplante Prozesse eingewirkt werden, falls der alte Prozess beendet wurde, ohne dass er PID-Datei entfernen konnte.
Warnung: Wird diese Abgleichoption mit einer weltschreibbaren PID-Datei oder alleine mit einem Daemon, der als nicht privilegierter Benutzer (d.h. nicht als root) in eine PID-Datei schreibt, verwandt, dann wird dies mit einem Fehler abgelehnt (seit Version 1.19.3), da dies ein Sicherheitsrisiko darstellt, da entweder jeder Benutzer hineinschreiben kann oder, falls der Daemon kompromitiert wird, dem Inhalt der PID-Datei nicht vertraut werden kann und dann ein privilegierter Ausf\(:uhrer (wie ein als Root ausgef\(:uhrtes Init-Skript) am Ende auf jeden Systemprozess agieren w\(:urde. Die Verwendung von /dev/null ist von diesen Pr\(:ufungen ausgenommen.
-x, --exec Programm
\(:Uberpr\(:uft auf Prozesse, die Instanzen von diesem Programm sind. Das Argument Programm sollte ein absoluter Pfadname sein. Hinweis: Dies k\(:onnte bei interpretierten Skripten nicht wie geplant funktionieren, da das Programm auf den Interpreter zeigt. Ber\(:ucksichtigen Sie, dass dies auch auf Prozesse, die innerhalb einer Chroot laufen, passen k\(:onnte, daher k\(:onnten andere Abgleichrestriktionen ben\(:otigt werden.
-n, --name Prozessname
\(:Uberpr\(:uft auf Prozesse mit dem Namen Prozessname. Der Prozessname ist normalerweise der Dateiname des Prozesses, er k\(:onnte aber vom Prozess selbst ge\(:andert worden sein. Hinweis: Auf den meisten Systemen wird diese Information aus dem \(Bqcomm\(lq-Namen des Prozesses aus dem Kernel ausgelesen. Dieser hat typischerweise eine recht kurze L\(:angenbegrenzung (mehr als 15 Zeichen anzunehmen ist nicht portabel).
-u, --user Benutzername|uid
\(:Uberpr\(:uft auf Prozesse die dem mit Benutzername oder uid spezifizierten Benutzer geh\(:oren. Hinweis: Wird diese Abgleichoption alleine verwandt, wird auf alle Prozesse, die auf den Benutzer passen, eingewirkt.

Allgemeine Optionen:

-g, --group Gruppe|gid
Wechselt 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\(:a\(ssig TERM).
-R, --retry Zeit\(:uberschreitung|Plan
Mit --stop spezifiziert, dass start-stop-daemon \(:uberpr\(:ufen soll, ob der Prozess (die Prozesse) sich beenden. Es \(:uberpr\(:uft wiederholt, ob passende Prozesse laufen, bis dies nicht mehr der Fall ist. Falls sich die Prozesse nicht beenden, werden weitere im \(BqPlan\(lq angegebene Aktionen durchgef\(:uhrt.
Falls Zeit\(:uberschreitung anstelle von Plan spezifiziert wird, dann wird der Plan Signal/Zeit\(:uberschreitung/KILL/Zeit\(:uberschreitung verwendet, wobei Signal das mit --signal spezifizierte Signal ist.
Plan ist eine Liste von mindestens zwei durch Schr\(:agstriche (/) getrennten Punkten; jeder Punkt kann aus -Signalnummer oder [-]Signalname bestehen, was bedeutet, dass dieses Signal gesendet werden soll, oder aus Zeit\(:uberschreitung, 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\(:ur 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 \(:uber Pfadname spezifizierte Prozess gestartet. Falls nicht angegeben, werden standardm\(:a\(ssig die an --exec \(:ubergebenen Argumente verwendet.
-t, --test Gibt die Aktionen aus, die erledigt w\(:urden und setzt die entsprechenden R\(:uckgabewerte, f\(:uhrt aber keine Aktionen durch.
-o, --oknodo
Liefert den R\(:uckgabewert 0 anstatt 1 falls keine Aktionen ausgef\(:uhrt wurden (w\(:urden).
-q, --quiet
Gibt keine informativen Meldungen aus, zeigt nur Fehlermeldungen an.
-c , --chuid Benutzername|uid[:Gruppe|gid]
Wechselt vor dem Start des Prozesses zu diesem Benutzername/uid. Sie k\(:onnen durch Anh\(:angen von : auch die Gruppe spezifizieren, in diesem Fall wird die Gruppe oder gid wie bei dem Befehl chown(1) (Benutzer:Gruppe) angegeben. Falls ein Benutzer ohne Gruppe angegeben ist, wird die prim\(:are GID f\(:ur diesen Benutzer verwandt. Wenn Sie diese Option verwenden, m\(:ussen Sie daran denken, dass die prim\(:are und zus\(:atzliche Gruppen auch gesetzt werden, selbst wenn die Option --group nicht angegeben wird. Die Option --group ist nur f\(:ur Gruppen, in denen der Benutzer normalerweise kein Mitglied ist (wie das Hinzuf\(:ugen von pro-Prozess Gruppenmitgliedschaften f\(:ur generische Benutzer wie nobody).
-r, --chroot Wurzel
Wechselt das Verzeichnis 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
Wechselt vor dem Starten des Prozesses zum Verzeichnis Pfad. Dies wird, falls die -r|--chroot Option gesetzt ist, nach dem chroot durchgef\(:uhrt. Falls nicht angegeben, wird start-stop-daemon vor dem Prozess-Start in das Wurzelverzeichnis wechseln.
-b, --background
Typischerweise verwendet f\(:ur Programme, die sich nicht selbst\(:andig abl\(:osen. Diese Option zwingt start-stop-daemon vor dem Start des Prozesses einen Fork durchzuf\(:uhren, und zwingt diesen dann in den Hintergrund. Warnung: start-stop-daemon kann nicht den R\(:uckgabewert \(:uberpr\(:ufen, falls der Prozess aus irgendeinem Grund nicht startet. Dies ist ein letztes Mittel und ist nur f\(:ur Programme gedacht, bei denen das selbstst\(:andige Forken keinen Sinn ergibt oder wo es nicht sinnvoll ist, den Code hierf\(:ur hinzuzuf\(:ugen.
--notify-await
Wartet, dass der Hintergrundprozess eine Bereitschaftsbenachrichtigung sendet, bevor der Dienst als gestartet betrachtet wird (seit Version 1.19.3). Dies implementiert Teil des Bereitschaftsprotokolls von Systemd, wie es in der Handbuchseite sd_notify(3) festgelegt ist. Die folgenden Variablen werden unterst\(:utzt:
READY=1
Das Programm ist bereit, den Dienst zu leisten, daher kann sicher beendet werden.
EXTEND_TIMEOUT_USEC=Anzahl
Das Programm erbittet die Verl\(:angerung der Zeit\(:uberschreitung um Anzahl Mikrosekunden. Dies wird die aktuelle Zeit\(:uberschreitung auf den festgelegten Wert zur\(:ucksetzen.
ERRNO=Nummer
Das Programm beendete sich mit einem Fehler. Macht das gleiche und gibt die benutzerfreundliche Zeichenkette f\(:ur den Wert von errno aus.
--notify-timeoutZeit\(:uberschreitung
Setzt eine Zeit\(:uberschreitung f\(:ur die Option --notify-await (seit Version 1.19.3). Wenn die Zeit\(:uberschreitung erreicht wird, wird sich start-stop-daemon mit einem Fehler-Code beenden und es wird auf keine Bereitschaftsbenachrichtigung gewartet. Die Vorgabe ist 60 Sekunden.
-C, --no-close
Keinen Dateideskriptor schlie\(ssen, wenn ein Daemon in den Hintergrund gezwungen wird (seit Version 1.16.5). Dies wird zu Fehlersuchzwecken angewandt oder um Dateideskriptoren zur Protokollierung der Prozessausgabe umzuleiten. Nur relevant bei der Verwendung von --background.
-N, --nicelevel Ganzzahl
Dies \(:andert die Priorit\(:at des Prozesses bevor er gestartet wird.
-P, --procsched Strategie:Priorit\(:at
Dies \(:andert die Prozesssteuerstrategie (\(Bqprocess scheduler policy\(lq) und die Priorit\(:at des Prozesses, bevor dieser gestartet wird (seit Version 1.15.0). Die Priorit\(:at kann optional festgelegt werden, indem ein : gefolgt von einem Wert angegeben wird. Die Standard-Priorit\(:at betr\(:agt 0. Die derzeit unterst\(:utzten Werte f\(:ur die Strategie lauten other, fifo und rr.
-I, --iosched Klasse:Priorit\(:at
Dies \(:andert die EA-Steuerklasse (\(BqIO scheduler class\(lq) und die Priorit\(:at des Prozesses, bevor dieser gestartet wird (seit Version 1.15.0). Die Priorit\(:at kann optional festgelegt werden, indem ein : gefolgt von einem Wert angegeben wird. Die Standard-Priorit\(:at betr\(:agt 4, au\(sser Klasse lautet idle, dann betr\(:agt sie immer 7. Die derzeit unterst\(:utzten Werte f\(:ur die Klasse lauten idle, best-effort und real-time.
-k, --umask Maske
Dies setzt die umask des Prozesses, bevor er gestartet wird (seit Version 1.13.22).
-m, --make-pidfile
Verwendet, wenn ein Programm gestartet wird, das keine eigene PID-Datei anlegt. Diese Option sorgt daf\(:ur, dass start-stop-daemon die mit --pidfile referenzierte Datei anlegt und die PID kurz vor der Ausf\(:uhrung des Prozesse hineinlegt. Beachten Sie, dass die Datei beim Anhalten des Programms nur entfernt wird, falls --remove-pidfile verwandt wird. Hinweis: Diese Funktion k\(:onnte in nicht allen F\(:allen funktionieren. Insbesondere wenn das auszuf\(:uhrende Programm sich vom Hauptprozess forkt. Deshalb ist diese Option normalerweise nur in Kombination mit der Option --background sinnvoll.
--remove-pidfile
Wird verwandt, wenn ein Programm gestoppt wird, das seine PID-Datei nicht entfernt (seit Version 1.17.19). Diese Option f\(:uhrt dazu, dass start-stop-daemon die durch --pidfile referenzierte Datei nach der Beendigung des Prozesses entfernt.
-v, --verbose
Gibt ausf\(:uhrliche informative Meldungen aus.

R\(:UCKGABEWERT

0 Die angeforderte Aktion wurde durchgef\(:uhrt. Falls --oknodo angegeben wurde, kann es auch sein, dass nicht durchgef\(:uhrt 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\(:uhrt 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\(:uckgeliefert:
0 Programm l\(:auft.
1 Programm l\(:auft nicht und die PID-Datei existiert.
3 Programm l\(:auft nicht.
4 Programmstatus kann nicht bestimmt werden.

BEISPIEL

Starte den Daemon food falls noch keiner l\(:auft (ein Prozess mit Namen food, der als Benutzer food mit PID in food.pid l\(:auft):
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\(:unf Sekunden auf sein Beenden:
start-stop-daemon --stop --oknodo --user food --name food \
        --pidfile /run/food.pid --retry 5
Vorf\(:uhrung 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

\(:UBERSETZUNG

Die deutsche \(:Ubersetzung wurde 2004, 2006-2020 von Helge Kreutzmann <>, 2007 von Florian Rehnisch <> und 2008 von Sven Joachim <> angefertigt. Diese \(:Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer f\(:ur die Kopierbedingungen. Es gibt KEINE HAFTUNG.

REFERENCED BY

⇧ Top