5 Nyttige Terminalværktøjer til bedre styring af processer i Linux
Linux tilbyder en række værktøjer til at undersøge dine løbende processer. Med applikationerne vist nedenfor kan du finde ud af, hvilke applikationer der spiser al din hukommelse, og hvilke filer der er knyttet til disse rogue-programmer. Eller du kan bare få en global visning af, hvordan dit system udfører.
Uanset din specifikke interesse vil denne tutorial tilbyde dig et udgangspunkt for den rejse.
1. top
Måske er den mest kendte service / proces manager i Linux toolkit top. Dens navn er et akronym for "Table of Processes." Linux-versionen (andre er skrevet til Unix, Solaris osv.) Er hostet med procps-pakken, en samling af værktøjer, som du kan gribe på ovenstående link.
Du kan se på dette skærmbillede, at toppen giver en masse oplysninger på én gang. Øverst på skærmen kan du se, hvor længe computeren har kørt, den aktuelle CPU-brug og den aktuelle hukommelsesforbrug. Disse værdier vedrører hele systemet - ikke kun de enkelte programmer, der vises under denne tekst.
I modsætning hertil kan du se individuel CPU og hukommelsesbrug til forskellige løbende processer i hovedparten af skærmen. Skærmbilledet her viser kun de tjenester, som "root" -brugeren kører, og "systemd" kommer først ind, da forbrugeren bruger mest hukommelsesbrug på kun 0, 3 procent.
Du kan køre øverst i kommandolinjen med bare top
at indtaste en interaktiv aflæsning af alle kørende processer for alle brugere. Running top U user
vil indtaste samme type miljø, men det vil vise processerne for den pågældende bruger.
Du kan også single out en pidof process
ved først at køre pidof process
at indtaste den output i top med top -p pid
. For eksempel returnerer pid firefox
på denne maskine "2886", så kører top -p 2886
viser kun processens information på skærmen.
2. iotop
Nogle forsyningsvirksomheder forsøger at pare ned hvad top tilbyder. Et sådant program, iotop, gør netop det. Dens output, som du kan se her, er meget enklere end toppen s deluge.
Iotop afslører input / output af en løbende proces. Øverst på skærmen viser den disklæsning og diskskrivning i bytes, før man afslører ID'en af hver proces, og den enkelte læser, skriver og I / O, de bruger.
Du kan som i top vælge iotops output ved at angive parametre som iotop -p pid
til at overvåge en enkelt proces eller iotop -u user
til at overvåge en enkelt brugers kørende processer.
3. Monit
Fra starten forsøger Monit at være mere specifik, men stadig nem at bruge. Den kører som en dæmon og vil følge processer og tjenester, som du angiver i sin konfigurationsfil.
At starte deamonen fra kommandolinjen ser ikke ud til meget.
For at få mest muligt ud af Monits evner er det en god praksis at lade Monit løbe fra starten. Ved hjælp af systemd fuldfører systemctl enable monit
kommandoen denne opgave.
Du kan derefter redigere Monits konfigurationsfil (placeret på "/ etc / monitrc") for at følge og ændre specifikke processer fra det andet, de begynder at køre. Tjek denne indstilling i config filen nedenfor.
Selv om linjerne kommenteres, kan du se, at denne række kommandoer ville følge Apache-processen, start eller stop den om nødvendigt, og opret varsler, når noget går galt. Config-filen er beregnet til at være let at læse og redigere; det bruger søgeord som "start", "if", "derefter" og "inden" for at fuldføre opgaver.
Relateret : Hvad er GREP i Linux og hvordan bruger du det?
4. lsof
Hvis du er nysgerrig om, hvilke filer en proces har åbnet, når den kører, skal du bruge lsof. Hvis du kører kommandoen lsof
, skal du liste som standard alle filer, der åbnes af hver proces, der kører på systemet. Derfor kan det være nyttigt at være mere specifik med din forespørgsel.
Du kan grave ind i det specifikke navn på en kørende proces, som f.eks. Firefox, ved at pipere lsofs output til grep
, som vil søge efter en streng, du angiver.
Så hvis du vil finde ud af, om Firefox kører et FLAC lydbibliotek, ville en kommando som følgende være nyttig:
lsof | grep firefox | grep -i libflac
Det reducerer output fra tusindvis af linjer til cirka tyve.
En version af den kommando frembringer følgende.
Hvad du kan replikere her, starter først lsof, så søger du efter "firefox" som en streng i lsofs output, så søger du disse linjer med "firefox" i dem for strengen "libflac." Grep bruger -i
flag i det sidste kommandoen for at ignorere store og små bogstaver i dens søgning.
Den endelige kommando grep -i gdbus
bruges her for at give et enkeltlinjebillede. Det udvælger vilkårligt den ene produktionslinje, der viser "gdbus" som opgavekommandoen lsof identificeret.
Lsof viser kommandoen i forbindelse med en køringsproces, dens proces-id, opgave-kommandoen i forbindelse med filen, processen kører, og navnet på den fil, der er knyttet til kørslen, ud over andre data.
5. ps_mem
Den enkleste applikation i denne liste, ps_mem, viser hukommelsesbrugen af kørende processer på et system. Et tørt løb af ps_mem
i kommandolinjen afslører en liste over alle igangværende processer og deres individuelle hukommelsesforbrug.
For at undersøge en bestemt proces kan du liste sit id - husk at bruge pidof process
at få den information - i ps_mem -p process
. Tjek denne udgang til reference:
Ps_mem er nyttigt, hvis du har et program, du tror bruger for meget hukommelse. Du kan bruge det som et selvstændigt værktøj eller sammen med andre for at bekræfte deres resultater.
Konklusion
Lad ikke applikationerne på din computer køre på afveje. Hold dem i skak med et hurtigt kig på toppen, iotop eller ps_mem, og undersøg videre med Monit og lsof.
Disse er kraftfulde værktøjer, der har mange flere muligheder til rådighed på deres man pages, så vær sikker på at også læse deres dokumentation, når de undersøger et besværligt problem.
Billedkredit: Xfce til undsætning!