Sådan bruger du Linux-kommandoen nohup til at holde processer kørende
Ved at bruge Linux-kommandoen nohup ignorerer systemet HUP-signalet. Det gør det muligt for processer at fortsætte med at køre i baggrunden. Output fra processerne omdirigeres derefter til filen nohup.out eller en anden fil efter eget valg.
Hvad er Linux nohup?
For at forstå, hvad Linux-kommandoen nohup er, er det en god idé at se nærmere på SIGHUP. Dette er et signal, der blandt andet genereres i Linux, når der opstår en forbindelsesfejl på en datalinje mellem operativsystemet og et andet program. Under visse omstændigheder er det dog nødvendigt, at dette signal ikke sendes. Dette er tilfældet, hvis et program skal fortsætte med at køre, selv efter at brugeren har logget af systemet. For at undertrykke signalet og lade programmer fortsætte med at køre i baggrunden bruges Linux nohup.
Hvordan fungerer Linux-kommandoen nohup?
Linux-kommandoen nohup er inkluderet i alle almindelige Linux-distributioner som Debian og Ubuntu og behøver derfor ikke installeres separat. Du kan bruge den til at få systemet til at køre et bestemt program i baggrunden og dermed adskille det fra login-shellen. Al output omdirigeres automatisk til mappen nohup.out. Ved længerevarende processer har dette den fordel, at du kan logge af uden at afbryde processen.
Hvordan ser syntaksen for nohup i Linux ud?
Den grundlæggende syntaks for Linux-kommandoen nohup ser altid ens ud:
$ nohup [Command] [Argument] [&]bash»[Kommando]« og »[Argument]« er parametre, der kan tilpasses. Brug »[&]«, hvis processerne skal fortsætte med at køre i baggrunden, efter at du har logget af.
Hvilke muligheder har kommandoen nohup?
Linux-kommandoen nohup accepterer ikke andre parametre end de to standardparametre -h eller –help og -v eller –version. Kun hvis man undlader at angive en parameter for \[kommando\], er parameteren -p eller –parents tilladt.
Eksempler på Linux-kommandoen nohup
Til sidst vil vi vise dig et par eksempler, så du bedre kan forstå, hvordan kommandoen fungerer.
$ nohup bash example.shbashDette udfører kommandoen i forgrunden. Kommandoens output omdirigeres automatisk til filen nohup.out.
$ nohup bash example.sh > output.txtbashDenne kommando omdirigerer udskriften til filen output.txt.
$ nohup bash example.sh &bashVed at indtaste dette vil kommandoen fortsætte med at køre i baggrunden. Hvis du ønsker at vende dette og bringe kommandoen tilbage til forgrunden, kan du bruge kommandoen fg.