Provided by: dpkg_1.22.21ubuntu3.1_amd64 

NAAM
start-stop-daemon - start en stopt systeemachtergronddiensten
OVERZICHT
start-stop-daemon [optie...] commando
BESCHRIJVING
start-stop-daemon wordt gebruikt om het creëren en afsluiten van processen op systeemniveau te regelen.
Door een van de overeenkomstige opties te gebruiken kan start-stop-daemon geconfigureerd worden om
bestaande exemplaren te vinden van actieve processen.
Opmerking: tenzij --pid of --pidfile opgegeven werden, gedraagt start-stop-daemon zich gelijk killall(1).
start-stop-daemon zal de procestabel overlopen op zoek naar processen die overeenkomen met de procesnaam,
het moeder-pid, uid en/of gid (als ze opgegeven werden). Voor elk proces dat een overeenkomst oplevert,
zal verhinderd worden dat --start het proces opstart. Aan alle overeenkomende processen zal het TERM-
signaal (of het signaal dat met --signal of --retry opgegeven werd) gegeven worden, indien --stop
opgegeven werd. Voor achtergronddiensten met langlevende dochterprocessen die bij een --stop moeten
blijven bestaan, moet u een pid-bestand opgeven.
COMMANDO'S
-S, --start [--] argumenten
Nagaan of het opgegeven proces bestaat. Indien een dergelijk proces bestaat, doet start-stop-daemon
niets en sluit het af met foutstatus 1 (0 indien --oknodo opgegeven werd). Indien een dergelijk
proces niet bestaat, start het een exemplaar ervan, door het programma te gebruiken dat ofwel met
--exec opgegeven werd, ofwel met --startas als dat gebruikt werd. Eventuele argumenten die na --
opgegeven werden aan de commandoregel, worden ongewijzigd doorgegeven aan het programma dat opgestart
wordt.
-K, --stop
Gaat na of het opgegeven proces bestaat. Indien een dergelijk proces bestaat, geeft start-stop-daemon
het het signaal dat met --signal opgegeven werd en sluit dan af met foutstatus 0. Indien een
dergelijk proces niet bestaat, sluit start-stop-daemon af met foutstatus 1 (0 indien --oknodo
opgegeven werd). Indien --retry opgegeven werd, zal start-stop-daemon controleren of het/de
proces(sen) beëindigd werden.
-T, --status
Gaat het bestaan van een opgegeven proces na en geeft een afsluitstatuscode terug die in
overeenstemming is met de LSB-acties voor initialisatiescripts (LSB Init Script Actions) (sinds
versie 1.16.1).
-H, --help
Informatie over het gebruik tonen en afsluiten.
-V, --version
De programmaversie tonen en afsluiten.
OPTIES
Vergelijkingsopties
--pid pid
Nagaan of een proces bestaat met het opgegeven pid (sinds versie 1.17.6). Het pid moet een getal zijn
groter dan 0.
--ppid moeder-pid
Nagaan of een proces bestaat met het opgegeven moeder-pid moeder-pid (sinds versie 1.17.7). Het
moeder-pid moet een getal zijn groter dan 0.
-p, --pidfile pid-bestand
Nagaan of een proces het bestand pid-bestand aangemaakt heeft.
Opmerking: deze vergelijkingsoptie alleen gebruiken, kan ertoe leiden dat geageerd wordt op niet-
bedoelde processen in het geval het oude proces eindigde zonder dat het in staat was het pid-bestand
te verwijderen.
Waarschuwing: deze vergelijkingsoptie gebruiken met een pid-bestand dat door iedereen beschreven kan
worden, of deze enkel gebruiken met een achtergronddienst die het pid-bestand wegschrijft als
gebruiker zonder bijzondere rechten, zal met een foutmelding geweigerd worden (sinds versie 1.19.3)
omdat het een veiligheidsrisico inhoudt. Dit is omdat elke gebruiker er naartoe kan schrijven, of
omdat de inhoud van het pid-bestand niet vertrouwd kan worden als de achtergronddienst aangetast
raakt, met als resultaat dat een programmauitvoerder met bijzondere rechten (zoals een init-script
dat als systeembeheerder uitgevoerd wordt) op gelijk welk systeemproces kan inwerken. Het gebruik van
/dev/null is vrijgesteld van deze controles.
-x, --exec programma
Op processen controleren welke exemplaren zijn van dit programma. Het argument programma moet een
absolute padnaam zijn.
Opmerking: met geïnterpreteerde scripts kan dit anders dan bedoeld werken, aangezien de interpreter
aangewezen zal worden als het bedoelde programma. Houd er rekening mee dat ook processen die in een
chroot uitgevoerd worden een overeenkomst zullen opleveren. Het kan dus nodig zijn om bijkomende
vergelijkingsrestricties op te geven.
-n, --name procesnaam
Nagaan of er processen bestaan die de naam procesnaam hebben. De procesnaam is meestal de
bestandsnaam van het proces, maar dat kan door het proces zelf gewijzigd zijn.
Opmerking: op de meeste systemen wordt deze informatie gehaald uit de kernel uit de comm-naam van het
proces. De limiet voor de lengte ervan heeft de tendens relatief klein te zijn (ervan uitgaande dat
meer dan 15 tekens niet-overdraagbaar is).
-u, --user gebruikersnaam|uid
Nagaan of er processen zijn die eigendom zijn van de gebruiker die met gebruikersnaam of uid
opgegeven werd.
Opmerking: enkel deze vergelijkingsoptie gebruiken zal ertoe leiden dat geageerd wordt op alle
processen die met de gebruiker overeenkomen.
Algemene opties
-g, --group groep|gid
Naar groep of gid veranderen bij het starten van het proces.
-s, --signal signaal
Samen met --stop gebruikt, geeft het op welk signaal moet gestuurd worden naar de processen die
gestopt worden (standaard is dat TERM).
-R, --retry verlooptijd|schema
Samen met --stop gebruikt, geeft het aan dat start-stop-daemon moet nagaan of het/de proces(sen)
stoppen. Het zal bij herhaling controleren of er eventueel processen actief zijn die een overeenkomst
opleveren, totdat dit voor geen enkel proces nog het geval is. Indien de processen niet afsluiten,
dan zal het verdere actie ondernemen, zoals aangegeven door het schema.
Indien verlooptijd opgegeven werd in plaats van schema, dan wordt het schema
signaal/verlooptijd/KILL/verlooptijd gebruikt, waarbij signaal het signaal is dat opgegeven werd met
--signal.
schema is een lijst van minstens twee items, van elkaar gescheiden door slashes (/). Elk item kan
-signaalnummer of [-]signaalnaam zijn, hetgeen betekent dat dit signaal gegeven moet worden, of
verlooptijd, hetgeen betekent dat dit aantal seconden gewacht moet worden op het afsluiten van de
processen, of forever, hetgeen betekent dat de rest van het schema zo nodig permanent herhaald moet
worden.
Indien het einde van het schema bereikt wordt en forever niet opgegeven werd, dan zal start-stop-
daemon afsluiten met de foutstatus 2. Indien een schema opgegeven werd, dan wordt elk signaal dat met
--signal opgegeven werd, genegeerd.
-a, --startas padnaam
Samen met --start gebruikt, start dit het proces dat met padnaam opgegeven werd. Indien dit niet
opgegeven werd, wordt als standaard het argument gebruikt dat bij --exec opgegeven werd.
-t, --test
De acties die ondernomen zouden worden tonen en de passende terugkeerwaarde geven, maar geen actie
ondernemen.
-o, --oknodo
Afsluitstatus 0 teruggeven in plaats van 1 indien er geen acties ondernomen werden(/zouden worden).
-q, --quiet
Geen informatieve berichten weergeven; enkel foutmeldingen tonen.
-c, --chuid gebruikersnaam|uid[:groep|gid]
Naar deze gebruikersnaam/uid veranderen voordat het proces gestart wordt. U kunt ook een groep
opgeven door een : toe te voegen en dan de groep of gid op te geven op dezelfde manier als voor het
commando chown(1) (gebruiker:groep). Indien een gebruiker opgegeven wordt zonder een groep, dan wordt
voor die gebruiker zijn primaire GID gebruikt. Bij het gebruik van deze optie moet u er zich van
bewust zijn dat ook de primaire en bijkomende groepen ingesteld worden, ook als de optie --group niet
opgegeven werd. De optie --group dient enkel voor groepen waartoe de gebruiker normaal niet behoort
(zoals het voor een specifiek proces instellen van een groepslidmaatschap voor algemene gebruikers
zoals nobody).
-r, --chroot hoofdmap
Chdir en chroot naar hoofdmap voordat het proces gestart wordt. Merk op dat het pid-bestand ook na
het chrooten gemaakt wordt.
-d, --chdir pad
Chdir naar pad voordat het proces gestart wordt. Dit gebeurt na het chrooten als de optie -r|--chroot
ingesteld werd. Indien dit niet opgegeven wordt, dan zal start-stop-daemon een chdir naar de hoofdmap
uitvoeren voordat het proces gestart wordt.
-b, --background
Wordt meestal gebruikt bij programma's die zich niet uit zichzelf afsplitsen. Deze optie dwingt
start-stop-daemon om een nieuw proces (fork) te beginnen voordat het proces wordt gestart, en dwingt
het naar de achtergrond.
Waarschuwing: start-stop-daemon kan de afsluitstatus van het proces niet opvolgen mocht de uitvoering
ervan om een of andere reden mislukken. Dit is een laatste toevlucht en is enkel bedoeld voor
programma's waarvoor het ofwel geen zin heeft om uit zichzelf een nieuw proces (fork) te beginnen, of
waarvoor het ondoenbaar is om code toe te voegen waardoor ze dat uit zichzelf zouden doen.
--notify-await
Wachten tot het achtergrondproces een kennisgeving zendt dat het gereed is, vooraleer de dienst als
opgestart beschouwd wordt (sinds versie 1.19.3). Dit past elementen van het 'readiness protocol' van
systemd toe, zoals dit in de man-pagina sd_notify(3) gespecificeerd wordt. De volgende variabelen
worden ondersteund:
READY=1
Het programma is gereed om zijn dienstverlening aan te bieden en dus kunnen we veilig afsluiten.
EXTEND_TIMEOUT_USEC=aantal
Het programma vraagt om de wachttijd uit te breiden met aantal microseconden. Dit stelt de
huidige wachttijd opnieuw in op de opgegeven waarde.
ERRNO=nummer
Het programma sluit af met een foutmelding. Hetzelfde doen en van de errno-waarde de
gebruikersvriendelijke tekenreeks tonen.
--notify-timeout wachttijd
Een wachttijd instellen voor de optie --notify-await (sinds versie 1.19.3). Wanneer de wachttijd
verlopen is, zal start-stop-daemon afsluiten met een foutmelding en zal niet gewacht worden op de
kennisgeving van gereedheid. Standaard is dit 60 seconden.
-C, --no-close
Een eventuele bestandsindicator niet sluiten bij het naar de achtergrond dwingen van de
achtergronddienst (sinds version 1.16.5). Gebruikt met het oog op debuggen om de uitvoer van het
proces te zien of om bestandsindicatoren om te leiden om de procesuitvoer te loggen. Enkel relevant
als --background gebruikt wordt.
-O, --output padnaam
stdout en stderr omleiden naar padnaam wanneer de achtergronddienst naar de achtergrond gedwongen
wordt (sinds versie 1.20.6). Enkel relevant bij het gebruik van --background.
-N, --nicelevel geheel-getal
Dit wijzigt de prioriteit van het proces voor het gestart wordt.
-P, --procsched beleid:prioriteit
Dit wijzigt het procesplannerbeleid en de procesplannerprioriteit van het proces voor het gestart
wordt (sinds versie 1.15.0). Facultatief kan de prioriteit opgegeven worden door een :, gevolgd door
de waarde, toe te voegen. De standaardprioriteit is 0. De momenteel ondersteunde waarden voor beleid
zijn other, fifo en rr.
Deze optie doet mogelijk niets op sommige systemen waar POSIX-procesplanning niet wordt ondersteund.
-I, --iosched klasse:prioriteit
Dit wijzigt de IO-plannerklasse en IO-plannerprioriteit van het proces voor het gestart wordt (sinds
versie 1.15.0). Facultatief kan de prioriteit opgegeven worden door een :, gevolgd door de waarde,
toe te voegen. De standaardprioriteit is 4, tenzij klasse idle is. In dat geval zal prioriteit steeds
7 zijn. De momenteel ondersteunde waarden voor klasse zijn idle, best-effort en real-time.
Deze optie doet mogelijk niets op sommige systemen waar Linux IO-planning niet wordt ondersteund.
-k, --umask masker
Dit stelt het umask van het proces in voor het gestart wordt (sinds versie 1.13.22).
-m, --make-pidfile
Wordt gebruikt bij het starten van een programma dat zijn eigen pid-bestand niet creëert. Deze optie
zal start-stop-daemon het bestand waarnaar met --pidfile verwezen wordt, doen aanmaken en er het pid
in doen plaatsen juist voor het uitvoeren van het proces. Merk op dat het bestand bij het stoppen van
het programma enkel verwijderd zal worden als --remove-pidfile gebruikt wordt.
Opmerking: het is mogelijk dat deze functionaliteit niet in alle gevallen werkt. Dit is in het
bijzonder zo als het programma dat uitgevoerd wordt, een nieuw proces (fork) begint vanuit zijn
hoofdproces. Daarom is dit gewoonlijk enkel nuttig in combinatie met de optie --background.
--remove-pidfile
Wordt gebruikt bij het stoppen van een programma dat zijn eigen pid-bestand niet verwijdert (sinds
versie 1.17.19). Deze optie zal start-stop-daemon het bestand waarnaar met --pidfile verwezen wordt,
doen verwijderen na het beëindigen van het proces.
-v, --verbose
Uitvoerige informatieve mededelingen weergeven.
AFSLUITSTATUS
0 De gevraagde actie werd uitgevoerd. Indien --oknodo opgegeven werd, is het ook mogelijk dat er niets
gedaan moest worden. Dit kan het geval zijn als --start opgegeven werd en er al een overeenkomstig
proces actief was, of als --stop opgegeven werd en er geen overeenkomstige processen waren.
1 Indien --oknodo niet opgegeven werd en niets gedaan werd.
2 Indien --stop en --retry opgegeven werden, maar het einde van het schema bereikt werd en de processen
nog steeds actief waren.
3 Elke andere fout.
Bij het gebruik van het commando --status, worden de volgende statuscodes teruggegeven:
0 Het programma is actief.
1 Het programma is niet actief en het pid-bestand bestaat.
3 Het programma is niet actief.
4 Niet in staat om de status van het programma te bepalen.
VOORBEELD
De achtergronddienst food starten, tenzij er al één actief is (een proces met als naam food, dat actief
is als gebruiker food met de pid in food.pid):
start-stop-daemon --start --oknodo --user food --name food \
--pidfile /run/food.pid --startas /usr/sbin/food \
--chuid food -- --daemon
SIGTERM naar food sturen en tot 5 seconden wachten op zijn beëindiging:
start-stop-daemon --stop --oknodo --user food --name food \
--pidfile /run/food.pid --retry 5
Demonstratie van een aangepast schema om food te stoppen:
start-stop-daemon --stop --oknodo --user food --name food \
--pidfile /run/food.pid --retry=TERM/30/KILL/5
1.22.21 2025-10-16 start-stop-daemon(8)