Alt, der kører på et Linux-system, fra en brugerapplikation til en systemtjeneste, er dens egen separate proces. Selvom din computer sidder på en tom terminalskærm, er der utvivlsomt en masse processer, der kører i baggrunden. Der er flere Linux-værktøjer, vi kan bruge til at identificere alle processerne på vores system, og det dækker vi i denne vejledning.
At vide, hvordan man kontrollerer for kørende processer, giver dig mulighed for at kontrollere, om noget kører, afslut det om nødvendigt, og overvåg dets indvirkning på dit systems ressourcer (CPU og RAM).
Listeprocesser med kommandoen ps
Kommandoen ps kan vise alle de processer, der kører på et Linux-system med indstillingen -e.
ps -e
Det er normalt, at et system har et stort antal processer, der kører på til enhver tid, så det er lettere at sige gennem denne liste ved at sende kommandoen til mere. For eksempel at se 15 linjer ad gangen:
ps -e | more -15
Outputtet fra ps viser os hver proces, der kører, dens respektive proces-id (forkortet som PID) og TTY (terminalinterface, som processen kører på). Et spørgsmålstegn i TTY-kolonnen betyder, at processen ikke er “t knyttet til enhver terminal int erface – det kører bare i baggrunden.
Det kan være nødvendigt at kende PID’en for en proces for at dræbe den eller TTY, så du kan vende tilbage til den åbne proces ved igen at tilslutte den korrekte terminalvindue.
En anden nyttig mulighed med ps er indstillingen -aux.
ps -aux
Ligesom den forrige indstilling viser dette en liste over alle processer kører på dit system. Men det viser også hver processes aktuelle CPU- og RAM-brug samt kommandoen, der har skabt hver proces.
Find en proces med pgrep
pgrep-kommadens slags kombinerer ps og grep for os. Vi kan specificere navnet – eller en del af et navn – på en proces, vi søger efter, og pgrep returnerer de respektive proces-id’er.
For eksempel for at søge efter en hvilken som helst SSH relateret proces på dit system, skal du skrive:
pgrep ssh
Som vist i skærmbilledet ovenfor har pgrep fundet en SSH-proces med en PID på 1143. For yderligere verifikation, lad os kontrollere med ps-kommandoen:
ps -e | grep 1143
Se kørende processer med top
Topværktøjet er selvfølgelig et kommandolinjeværktøj, men det giver et interaktivt output af alle aktuelt kørende processer, der viser de oplysninger, som du forventer at se i en grafisk grænseflade. Det er let at komme i gang, skriv bare top:
top
Outputtet fra toppen giver os wi en masse information, inklusive den samlede brug af CPU og RAM på vores system. Men vi er her for listen over processer, som du finder lige under det.
Terminalvinduet er simpelthen ikke stort nok til, at toppen kan liste hver kørende proces, så toppen viser så mange som det kan og bestiller dem efter systemressourceforbrug. Med andre ord vil de processer, der bruger mest CPU og RAM, blive vist øverst. Mindre krævende processer vises lavere på listen, muligvis afskæring fra terminalvinduet.
Brug piletasterne på dit tastatur til at rulle op og ned gennem listen over processer.
Der er en hel del oplysninger angivet om hver kørende proces. Her er en hurtig gennemgang af, hvad disse forskellige kolonner betyder:
- PID: Proces-id for hver opgave.
- PR: Planlægningsprioriteten for en opgave.
- NI: Den pæne værdi af en opgave. Negative tal angiver højere prioritet.
- VIRT: Mængden af virtuel hukommelse, der bruges.
- RES: Mængden af resident hukommelse bruges.
- SHR: Mængden af delt hukommelse, der bruges.
- S: Status for en opgave (R = kører, S = sovende).
- % CPU: Nuværende CPU-procentdel bruges af en opgave.
- % MEM: Nuværende RAM-procentdel bruges af en opgave.
- TIME +: CPU-tiden for en opgave.
- KOMMANDO: Kommandoen, der bruges til at gyde opgaven.
Som nævnt er toppen interaktiv, så vi kan bruge nogle tastaturgenveje til at gøre nogle pæne ting med det. Vi ” Jeg gennemgår et par af de mere praktiske nedenfor.
Tryk på z-tasten for at køre processer med farvekoder. Dette gør det lettere at skelne kørende opgaver fra sovende eller zombieprocesser.
Tryk på c-tasten for at få den fulde kommando, der bruges til hver opgave. Dette viser den absolutte sti sammen med de anvendte indstillinger.
Tryk på k-tasten for at dræbe en kørende proces lige fra topværktøjet. Dette sparer lidt tid på at skulle forlade værktøjet og udstede en separat kill-kommando. Du skal bare indtaste PID for den proces, du vil afslutte:
Tryk på r-tasten for at ændre prioriteten for en proces med renice. Indtast PID for den proces, du vil fortryde:
For flere muligheder skal du trykke på h (hjælp) -tasten for at se alt andet, som toppen kan gøre.
Når du er færdig med at bruge topværktøjet, kan du afslutte værktøjet og vende tilbage til terminalen ved at trykke på q.
Se kørende processer med htop
htop-værktøjet bygger på toppen og er lidt mere brugervenligt og behageligt at se på. Den eneste ulempe er, at den ikke er installeret på alle Linux-distributioner som standard, så du bliver muligvis nødt til at installere den først. Det skal være i dit operativsystems opbevaringssteder, så her skal du installere det med din pakkehåndtering:
Debian og Ubuntu:
sudo apt-get install htop
CentOS og Fedora:
dnf install htop
Red Hat:
yum install htop
Når du er installeret, skal du bare skrive htop for at køre hjælpeprogrammet.
htop
Du kan bruge musen til at interagere med htop, og de forskellige tastaturkommandoer er anført i bunden af terminalvinduet. Den fungerer stort set det samme som top, men med en renere grænseflade, der er lettere at forstå.
Konklusion
I denne vejledning har vi vist dig et par forskellige metoder til at se de kørende processer på et Linux-system. Hvilken du bruger, afhænger af den aktuelle situation og din personlige præference, men hver metode har sine egne fordele.