Betalningsmetoder Abuse

Arbeta i Linux bakgrundsprocess

27.01.2023, 23:58

Vi har berättat vad en Linux-bakgrundsprocess är och hur man startar den på rätt sätt. I den här artikeln berättar vi hur den fungerar i det här läget.

Hur en bakgrundsprocess fungerar

Att köra ett skript i Linux är en uppgift, du måste se till att det fungerar korrekt direkt efter att du har stängt terminalen. Terminalen stängs på följande sätt: du måste klicka på korset som finns i det övre hörnet av skärmen, detta leder till att alla bakgrundsprocesser avslutas. Det finns flera metoder för att spara dem om anslutningen till det interaktiva skalet går förlorad

Först: ta bort jobbkön från uppgiften genom att använda disown:

disown

Som i de tidigare fallen, om det finns flera processer som körs samtidigt, bör numret på den i förhållande till vilken åtgärden kommer att utföras anges:

disown %1

Se till att uppgiften inte finns i uppgiftslistan. Hur man gör detta. Använd verktyget jobs -l. För att visa hela listan över pågående processer används kommandot:

ps aux

Nästa metod: du sparar de processer som körs med kommandot nohup. Detta kommando efter exekvering kommer i sin tur att utföra ett annat kommando, alla SIGHUP-signaler ignoreras.

Du kan köra kommandot i bakgrunden så här:

nohup command &

Som du kan se i bilden ovan kommer kommandots utdata att skickas till nohup.out. Det viktigaste är att processen fortsätter att fungera efter att du har loggat ut och stängt terminalen. Det finns några verktyg som gör att du kan köra två eller flera sessioner samtidigt. I synnerhet Screen och Tmux låter dig göra detta.

  • Screen eller GNU Screen är en terminalmultiplexerare som gör att du kan starta en arbetssession och öppna ett valfritt antal fönster (virtuella terminaler) inom den. Processer som körs i detta program kommer att köras även om deras fönster är osynliga eller om programmet har slutat köras.
  • Tmux är ett mer modernt alternativ till GNU Screen. Funktionerna i Tmux är dock inte fundamentalt annorlunda - du kan öppna många fönster inom en och samma session på samma sätt. Uppgifter som körs i Tmux fortsätter att köras om terminalen stängs.

Vi har löst det här problemet, som du kan se är allt elementärt och enkelt.