start-stop-daemon(8)

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

start-stop-daemon(8)

NAMN

start-stop-daemon — starta och stoppa systemdemoner

SYNOPSIS

start-stop-daemon [alternativ...] kommando

BESKRIVNING

start-stop-daemon används för att skapa och avsluta processer på systemnivå. Med hjälp av matchningsflaggorna kan verktyget hitta befintliga instanser av en process.

Observera: Om inte --pid eller --pidfile anges beter sig verktyget ungefär som killall(1). Det skannar procestabellen efter processer som matchar processnamn, föräldra-PID, uid och/eller gid (om angivet). Alla träffar hindrar --start från att starta demonen. Alla träffar skickas signalen TERM (eller den som anges via --signal eller --retry) om --stop används. För demoner som har långlivade barnprocesser som ska överleva ett --stop måste du ange en pidfil.

KOMMANDON

Kommando Beskrivning
-S, --start [ -- ] argument Kontrollera om en angiven process redan finns. Om den finns görs inget (returvärde 1, eller 0 med --oknodo).

Finns ingen process startas en instans via --exec eller --startas. Alla argument efter -- skickas oförändrade till programmet.

-K, --stop Kontrollera om processen finns. Om ja: skicka signalen enligt --signal (retur 0). Om nej: retur 1 (eller 0 med --oknodo).

Med --retry kontrolleras att process(erna) verkligen har terminerat.

-T, --status Kontrollera om en angiven process finns och returnera status enligt LSB Init Script Actions.
-H, --help Visa användningsinformation.
-V, --version Visa programversion.

FLAGGOR

Matchningsflaggor (väljer vilka processer som avses)

Flagga Beskrivning
--pid pid Matcha en process med angivet PID (> 0).
--ppid ppid Matcha process med angivet föräldra-PID (> 0).
-p, --pidfile pidfil Matcha om processen har skapat pidfil.

Obs: Att använda enbart denna matchning kan påverka fel process om en gammal pidfil ligger kvar. Varning: Världsskrivbar pidfil eller pidfil skapad av oprivilegierad användare (utan ytterligare matchning) avvisas av säkerhetsskäl (undantag: /dev/null).

-x, --exec exekverbar Matcha processer som är instanser av den angivna körbara filen (absolut sökväg).

Obs: För tolkade skript matchas tolken. Processer i chroot kan också matchas – kombinera med andra begränsningar.

-n, --name processnamn Matcha processer med detta namn (”comm”-namnet i kärnan, brukar vara kort; >15 tecken är opålitligt portabelt).
uid Matcha processer ägda av given användare/uid.

Obs: Att använda enbart detta kan påverka alla processer för den användaren.

Generella flaggor

Flagga Beskrivning
gid Byt grupp innan processen startas.
-s, --signal signal Med --stop: vilken signal som ska sändas (standard: TERM).
schema Med --stop: kontrollera upprepade gånger om processerna avslutas.

timeout: använd schemat signal/timeout/KILL/timeout (signal = från --signal). schema: lista separerad med / av signaler (t.ex. TERM eller -15), tider i sekunder, och ev. forever för att upprepa resten i all oändlighet. Om slutet nås utan forever och processer finns kvar returneras 2. Angiven --signal ignoreras när --retry med schema används.

-a, --startas sökväg Med --start: kör detta program (default: det som angavs till --exec).
-t, --test Visa vad som skulle göras och sätt returvärde, men gör inga ändringar.
-o, --oknodo Returnera 0 istället för 1 om ingen åtgärd (skulle) utföras.
-q, --quiet Undertryck informationsmeddelanden (visa bara fel).
uid[:]grupp|gid Byt användare/grupp före start. Primär och supplementära grupper sätts enligt användaren.

--group kan addera extra gruppmedlemskap (t.ex. för nobody).

-r, --chroot rot chroot och byt katalog till rot före start. Pidfilen skrivs efter chroot.
-d, --chdir sökväg Byt katalog före start (efter ev. --chroot). Default: /.
-b, --background Tvinga forking och kör i bakgrunden (för program som inte själva demoniserar).

Varning: Exitstatus kan inte kontrolleras om uppstarten misslyckas — använd endast som sista utväg.

--notify-await Vänta på readiness-notifiering från bakgrundsprocessen innan tjänsten anses startad (systemd-protokoll: se sd_notify(3)). Stöder READY=1, EXTEND_TIMEOUT_USEC=..., ERRNO=....
--notify-timeout sek Tidsgräns för --notify-await (default: 60 s). Vid timeout avslutas med fel.
-C, --no-close Stäng inte fildeskriptorer när processen tvingas till bakgrund (felsökning/loggning; endast relevant med --background).
-O, --output fil Omdirigera stdout och stderr till fil när processen tvingas i bakgrunden (endast med --background).
-N, --nicelevel int Sätt processens ”nice”-prioritet före start.
-P, --procsched policy:prio Sätt schemaläggningspolicy/prio före start. Policy: other, fifo, rr (prio valfritt, default 0). Kan sakna effekt på system utan POSIX-schemaläggning.
-I, --iosched klass:prio Sätt I/O-schemaläggningsklass/prio före start. Klasser: idle, best-effort, real-time. Default prio 4 (7 för idle). Kan sakna effekt på vissa system.
-k, --umask mask Sätt umask innan start.
-m, --make-pidfile Skapa pidfil (angiven med --pidfile) precis före exec om programmet inte själv skapar den.

Tas endast bort vid stopp om --remove-pidfile används. Kan fallera om programmet forkar — fungerar bäst ihop med --background.

--remove-pidfile Ta bort pidfilen vid stopp om programmet inte gör det självt.
-v, --verbose Skriv utförlig information.

AVSLUTNINGSSTATUS

Kod Betydelse
0 Åtgärden utfördes (eller inget behövde göras med --oknodo).
1 Inget gjordes och --oknodo användes inte.
2 --stop och --retry angavs, schemat gick ut och processer kör fortfarande.
3 Övrigt fel.

Vid --status returneras:

Kod Betydelse
0 Programmet kör.
1 Programmet kör inte och pidfil finns.
3 Programmet kör inte.
4 Status kunde inte avgöras.

EXEMPEL

Starta demonen food om den inte redan kör (namn food, användare food, pid i food.pid):

start-stop-daemon --start --oknodo --user food --name food \
  --pidfile /usr/local/var/run/food.pid --startas /usr/sbin/food \
  --chuid food -- --daemon

Skicka SIGTERM till food och vänta upp till 5 sekunder:

start-stop-daemon --stop --oknodo --user food --name food \
  --pidfile /usr/local/var/run/food.pid --retry 5

Eget stopp-schema för food (TERM i 30 s, sedan KILL i 5 s):

start-stop-daemon --stop --oknodo --user food --name food \
  --pidfile /usr/local/var/run/food.pid --retry=TERM/30/KILL/5

COLOPHON

Denna sida är en del av dpkg-projektet (Debians pakethanterare). Projektinfo: ⟨https://wiki.debian.org/Teams/Dpkg/⟩ Fel för denna manualsida: ⟨http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=dpkg⟩

Sidan hämtades från uppströms Git-förvaret (git clone https://git.dpkg.org/git/dpkg/dpkg.git) den 2 februari 2025 (senaste commit: 2025-01-16). För HTML-renderingsproblem eller förbättringar, kontakta: man-pages@man7.org

Sidslut

Orginalhemsidan på Engelska : https://man7.org/linux/man-pages/man8/start-stop-daemon.8.html Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.