I Linux- og Unix-baserede operativsystemer er en kørende kommandoinstans kendt som en proces. Du kan identificere hver proces med et unikt proces-id. Linux giver kommandolinjeværktøjer til at liste, administrere og overvåge disse processer effektivt.

Du kan bruge disse værktøjer til at prioritere hver proces eller sætte dem i baggrunden eller forgrunden for at administrere systemressourcer effektivt.

Denne guide til processtyring i Linux indeholder værktøjer såsom ps, kill, renice og andre kommandoer, der hjælper systemadministratorer med at administrere og liste processer.

Listeprocesser med ps-kommandoen

Det ældste og mest brugte kommandolinjeværktøj til at vise aktuelt kørende processer på Linux er ps. Selv om den øverste kommando er en anden interaktiv og skærmorienteret måde at administrere og liste systemprocesser på, ps viser også yderligere information som de ressourcer, hver proces bruger.

På grund af et flerbrugermiljø er hver proces i Linux knyttet til en separat bruger- og gruppekonto. Derfor hjælper kontooplysninger med procesdetaljer dig med at få adgang til de systemressourcer, en proces kan bruge.

instagram viewer

For eksempel kan processer, der kører med superbrugerrettigheder, få adgang til flere systemressourcer end en almindelig bruger, og det er her ps hjælper systemadministratorer.

Følgende output er et eksempel på listeprocesser med brugernavne, den forløbne tid og tilhørende hukommelse og CPU-forbrug:

Du kan også notere STAT-kolonnen, der viser status for den kørende proces. R repræsenterer den proces, der kører i øjeblikket, og S er en sovende proces med et plustegn, der indikerer forgrundsoperationer.

Du kan liste alle den aktuelle brugers processer som følger:

ps ux | mindre

Sådan angiver du processer for alle brugere:

ps aux | mindre

Håndtering af processer med systemmonitor

System Monitor giver en grafisk måde at vise og styre processer på. For at starte System Monitor, gå til Applikationer > Systemovervågning. Skift til Processer fanen for at se alle de kørende processer.

Som standard viser den processer i alfabetisk rækkefølge for den aktuelle bruger. Du kan omsortere proceslisten ved at klikke på en hvilken som helst kolonneoverskrift. Desuden kan du klikke på %CPU og Hukommelse overskrifter for at se processer, der bruger mere processorkraft og hukommelse.

System Monitor giver dig mulighed for at styre processer på forskellige måder, hvilket betyder, at du kan stoppe, dræbe, fortsætte, afslutte og ændre procesprioritet ved blot at højreklikke på et procesnavn.

Det er det bedste gå-til-værktøj for nybegyndere Linux-brugere, der ikke ved, hvordan man arbejder med kommandolinjeværktøjer.

Relaterede: Sådan får du vist topprocesresultater og sortering efter hukommelse

Arbejde med baggrunds-/forgrundsprocesser

Der kommer et tidspunkt, hvor du skal få adgang til et Linux-system over et netværk ved kun at bruge en kommandolinje. Dette begrænser den effektive styring af flere aktive programmer. Men en shell giver dig mulighed for at styre programmer ved at skifte dem til baggrund og forgrund.

Sådan starter du en baggrundsproces

For at starte et program, mens du fortsætter med at arbejde i skallen, skal du køre kommandoen, stoppe den og placere den i baggrunden vha Ctrl + Z. For at køre et program direkte i baggrunden skal du tilføje et og-tegn (&) i slutningen af ​​kommandoen, som følger:

find /usr > /tmp/allusrfiles &

Notér jobnummer og proces-id. Husk, at du ikke kan køre kommandoer, der kræver terminalinput i baggrunden.

Du kan bruge job kommando for at vise alle de programmer/kommandoer, der kører i baggrunden eller dem, du stoppede (ved hjælp af Ctrl + Z).

job

Sådan genoptager du forgrunds- og baggrundsprocesser

For at fortsætte et job, du sætter i baggrunden, skal du bruge fg kommando, og det vil bringe kommandoen i forgrunden.

fg %

På samme måde, hvis du stoppede en kommando i at køre i baggrunden, kan du genstarte den igen i baggrunden ved at bruge bg-kommandoen som følger:

bg %

Dræbende processer på Linux

Ligesom et grafisk værktøj som System Monitor giver dig mulighed for at dræbe, stoppe og fortsætte en proces, kan du også bruge kommandolinjeværktøjer som f.eks. dræbe og Dræb alle at sende et signal til en kørende proces.

Bortset fra blot at dræbe en proces, hjælper kill-kommandoen også med at sende forskellige signaler til at styre procesadfærd.

Du kan bruge enten navne eller tal for at bruge et signal.

dræbe -signalnummer 
dræbe -signalnavn

For eksempel sender følgende kommandoer SIGKILL-signalet til en proces med PID 1987:

dræbe -9 1987
kill -SIGKILL 1987

De mest almindeligt anvendte processignaler er:

Mulighed Beskrivelse
SIGKILL (9) Dræber processen med det samme
SIGTERM (15) Afslutter processen
SIGSTOP (19/28/25) Stopper processen
SIGCONT (19/28/25) Fortsætter processen, efter at den er stoppet
TILMELD (1) Beder processen om at læse dens konfigurationsfil

Bemærk, at forskellige processer reagerer forskelligt på disse signaler, men de kan ikke stoppe SIGSTOP- og SIGKILL-signaler. Indtast følgende kommando for at læse mere om disse signaler:

mand 7 signal

Lær mere: Sådan afsluttes ikke-responsive processer i Linux med kill og pkill

Renicing processer på Linux

Linux-kernen prioriterer kørende processer og tildeler systemressourcer ved at overveje brugerkontoprivilegier. Kernen overvejer også en anden faktor, som er den "gode" værdi af hver kørende proces.

Standard nice-værdien for en proces er nul, men du kan indstille området mellem -20 til 19. Nogle fakta om indstilling procesprioritet med nice og renice værdier er:

  • En proces med lav nice-værdi har mere adgang til CPU-ressourcerne
  • En almindelig bruger kan kun omprioritere deres processer
  • En almindelig bruger kan kun indstille værdier mellem -20 og 19, og kan kun indstille en højere værdi
  • En superbruger kan indstille enhvers processer til enhver værdi, høj eller lav

Processtyring på Linux gjort let

Et flerbrugermiljø har flere processer, der kræver tilstrækkelig viden om systemressourcestyring for at forhindre flaskehalse og systembegrænsninger. En del af opgaven omfatter styring af processer ved at køre dem i baggrunden/forgrunden, dræbe eller genbruge dem.

Du kan også lære om det øverste kommandoværktøj til at vise og sortere processer og lære at afslutte ikke-reagerende processer på Linux.

7 måder at dræbe ikke-responsive programmer i Linux

Når en Linux-app ikke reagerer og går ned, hvordan kan du dræbe den? Prøv et af disse tricks for at tvinge et program i Linux til at afslutte.

Læs Næste

DelTweetE-mail
Relaterede emner
  • Linux
  • Computer processor
  • Linux kommandoer
  • Elementær Linux
Om forfatteren
Rumaisa Niazi (13 artikler udgivet)

Rumaisa er freelanceskribent på MUO. Hun har båret mange hatte, fra en matematiker til en informationssikkerhedsentusiast, og arbejder nu som SOC-analytiker. Hendes interesser inkluderer at læse og skrive om nye teknologier, Linux-distributioner og alt omkring informationssikkerhed.

Mere fra Rumaisa Niazi

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!

Klik her for at abonnere