stel je voor dat een kritisch proces op je systeem draait en lang duurt. Plotseling moet je uitloggen uit uw systeem. Als u uitlogt, uw processen zal stoppen, en u zult zeker willen om dit te voorkomen. Als u wilt dat uw lopende proces wordt voortgezet zonder enige onderbreking, dan heb je nohup commando nodig.

Nohup (staat voor no hangup) is een commando dat het HUP signaal negeert. Je vraagt je misschien af wat het HUP signaal is., Het is in principe een signaal dat wordt geleverd aan een proces wanneer de bijbehorende shell wordt beëindigd. Meestal, wanneer we uitloggen, dan zijn alle lopende programma ‘ s en processen worden opgehangen of gestopt. Als we het proces willen blijven uitvoeren, zelfs na afmelden of het verbreken van de verbinding met de huidige shell, kunnen we het nohup commando gebruiken. Het maakt de processen immuun voor HUP signalen om het programma te laten lopen, zelfs na het uitloggen. Met nohup, hoeft u niet langer in te loggen voor een lange tijd gewoon om te wachten tot het proces te zijn voltooid.,

In dit artikel zullen we uitleggen hoe het nohup commando in verschillende scenario ‘ s in Linux gebruikt kan worden.,gebruik het volgende commando:

$ nohup –help

om de versie-informatie van nohup te vinden, gebruik het volgende commando:

$ nohup –version

Start een proces met nohup

als u een commando of proces wilt laten draaien, zelfs als u de shell verlaat, gebruikt u de nohup gevolgd door het commando om uit te voeren:

$ nohup commando

zodra u het bovenstaande commando uitvoert, zullen alle uitvoer, samen met de foutmeldingen, worden toegevoegd aan de nohup.,bestand uit in de persoonlijke map of in de huidige map. Nu, als de shell gesloten is of je uitlogt, zal het hierboven uitgevoerde commando niet worden beëindigd.

Redirect output naar ander bestand

standaard wordt de uitvoer van het commando nouhup toegevoegd aan de nohup.uit het dossier. Om deze uitvoer naar een ander bestand om te leiden, Gebruik je > redirector operator gevolgd door de naam van het specifieke bestand. We hebben bijvoorbeeld het volgende commando gebruikt om de uitvoer van het commando nohup op te slaan in een nieuw bestand met de naam “myscript.sh”.

$ sudo nohup ./ mn.,sh > myscipt.sh &

Starten van een proces in de achtergrond met Nohup

om Te beginnen en zet het proces in de achtergrond, moet u gebruik maken van de nohup als volgt:

$ nohup commando &

De & symbool geeft aan de shell voer het commando in de achtergrond. Het is vergelijkbaar met het bovenstaande nohup Commando, behalve dat wanneer de sessie eindigt, het onmiddellijk terugkeert naar de shell prompt. Om het terug naar de voorgrond te brengen, gebruik je het “fg” Commando.,

De uitvoer van alle commando ‘ s die u uitvoert zal worden toegevoegd aan de nohup.uit het dossier. Je kunt dit bestand bekijken met het cat nohup commando in de Terminal. Het nummer 80132 in de bovenstaande schermafbeelding geeft het process Identification number (PID) aan van het proces dat op de achtergrond wordt uitgevoerd.

meerdere processen op de achtergrond starten met Nohup

u kunt meerdere opdrachten op de achtergrond uitvoeren met het commando nohup. In het volgende voorbeeld worden mkdir, ping en ls commando ‘ s op de achtergrond uitgevoerd met het nohup Commando.,

$ nohup bash-c ‘mkdir files &&
ping-c 1 google.com && ls’> output.txt

proces op de achtergrond beëindigen

om een proces op de achtergrond te beëindigen, gebruikt u het kill commando als volgt:

$ kill -9 PID

u zult de PID van een proces bij gebruik van de nohup met “&”., Een andere manier om PID te vinden is via het pgrep-a commando. Bijvoorbeeld, als je het Ping commando met nohup hebt uitgevoerd, zal het op de achtergrond blijven draaien, zelfs als je de shell sluit. In dit geval, om de PID van een Ping proces dat op de achtergrond draait te vinden, gebruik je dit commando:

$ pgrep –a ping

Het zal alle processen tonen die geassocieerd zijn met het ping commando.,

om het Ping proces op de achtergrond te beëindigen, gebruik je het kill commando als volgt:$ kill -9 80928So, dit was de korte introductie van het nohup commando in Linux. Nohup commando wordt gebruikt om te voorkomen dat een belangrijk proces wordt beëindigd wanneer u uitlogt of de sessie sluit. Het helpt veel wanneer u een proces uitvoert, vooral scripts die lang duren om te voltooien.