Creative Saplings

30 Nyttige ‘ps Command’ -eksempler til Linux-procesovervågning

januar 30, 2021
No Comments

ps (processestatus) er et oprindeligt Unix / Linux-værktøj til visning af oplysninger om et valg af kørende processer på et system: det læser disse oplysninger fra de virtuelle filer i / proc filsystem. Det er et af de vigtige værktøjer til systemadministration specifikt under procesovervågning for at hjælpe dig med at forstå, hvad der foregår på et Linux-system.

Det har adskillige muligheder for at manipulere dets output, men du finder en lille antal af dem praktisk anvendelige til daglig brug.

Læs også: Alt hvad du behøver at vide om processer i Linux

I denne artikel ser vi på 30 nyttige eksempler på ps-kommandoer til overvågning af aktive kørende processer på et Linux-system.

Bemærk, at ps producerer output med en overskriftslinje, der repræsenterer betydningen af hver kolonne med information, du kan finde betydningen af alle etiketterne i ps man side.

Liste over alle processer i den aktuelle shell

1. Hvis du kører ps-kommando uden argumenter, viser den processer til den aktuelle shell.

$ ps 
Liste over aktuelle kørende processer

Udskriv alle processer i forskellige formater

2. Vis enhver aktiv proces på et Linux-system i generisk (Unix / Linux) format.

$ ps -AOR$ ps -e
Listeprocesser i standardformat

3. Vis alle processer i BSD-format.

$ ps auOR$ ps axu
Listeprocesser i BSD-format

4. For at udføre en fuldformatfortegnelse skal du tilføje -f eller -F flag.

$ ps -efOR$ ps -eF
Listeprocesser i langt listeformat

Vis brugerløbsprocesser

5. Du kan vælge alle processer, der ejes af dig (løber af ps-kommandoen, root i dette tilfælde), skriv:

$ ps -x 

6. For at få vist en brugers processer efter rigtigt bruger-id (RUID) eller navn skal du bruge -U flag.

$ ps -fU tecmintOR$ ps -fu 1000
Liste over brugerprocesser efter id

7. For at vælge en brugers processer efter effektivt bruger-id (EUID) eller navn skal du bruge indstillingen -u.

$ ps -fu tecmintOR$ ps -fu 1000

Udskriv alle processer, der kører som rod (rigtigt og effektivt ID)

8. Kommandoen nedenfor giver dig mulighed for at se alle processer, der kører med root-brugerrettigheder (ægte & effektiv ID) i brugerformat.

$ ps -U root -u root 
Vis Root User Running Processes

Vis gruppeprocesser

9. Hvis du vil liste alle processer, der ejes af en bestemt gruppe (reel gruppe-id (RGID) eller navn), skal du skrive.

$ ps -fG apacheOR$ ps -fG 48
Vis gruppeprocesser

10. For at liste alle processer, der ejes af det effektive gruppenavn (eller session), skal du skrive.

$ ps -fg apache

Vis processer efter PID og PPID

11. Du kan liste processer ved hjælp af PID som følger.

$ ps -fp 1178
Listeprocesser efter PID

12. For at vælge proces efter PPID skal du skrive.

$ ps -f --ppid 1154
Listeproces ved PPID

13. Foretag valg ved hjælp af PID-liste.

$ ps -fp 2226,1154,1146
Liste Processer efter PID’er

Vis processer efter TTY

14. For at vælge processer efter tty skal du bruge -t-flag som følger.

$ ps -t pst/0$ ps -t pst/1$ ps -ft tty1
Listeprocesser efter TTY

Printprocestræ

15. Et procestræ viser, hvordan processer i systemet er knyttet til hinanden; processer, hvis forældre er blevet dræbt, vedtages af init (eller systemd).

$ ps -e --forest 
Listeprocestræ

16. Du kan også udskrive et procestræ til en given proces som denne.

$ ps -f --forest -C sshdOR$ ps -ef --forest | grep -v grep | grep sshd 
Listeoversigt over proces

Udskrivningsprocessetråde

17. For at udskrive alle tråde i en proces skal du bruge flagget -H. Dette viser LWP (letvægtsproces) samt NLWP (antal letvægtsprocesser) kolonner.

$ ps -fL -C httpd
Listeprocestråde

Angiv brugerdefineret outputformat

Ved hjælp af indstillingerne -o eller –format giver ps dig mulighed for at oprette brugerdefinerede outputformater som vist nedenfor.

18. Hvis du vil liste alle formatspecifikatorer, skal du medtage L flag.

$ ps L

19. Kommandoen nedenfor giver dig mulighed for at se PID, PPID, brugernavn og kommando for en proces.

$ ps -eo pid,ppid,user,cmd
Listeprocesser med navne

20. Nedenfor er et andet eksempel på et brugerdefineret outputformat, der viser filsystemgruppe, god værdi, starttid og forløbet tid for en proces.

$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime
Listeproces-id-oplysninger

21. For at finde et procesnavn ved hjælp af dets PID.

$ ps -p 1154 -o comm=
Find proces ved hjælp af PID

Vis forældre- og underordnede processer

22. For at vælge en bestemt proces ved dens navn skal du bruge -C-flag, dette viser også alle dets underordnede processer.

$ ps -C sshd
Find overordnet underordnet proces

23. Find alle PID’er i alle forekomster af en proces, nyttige ved skrivning af scripts, der skal læse PID’er fra en std-output eller -fil.

$ ps -C httpd -o pid=
Find alle proces-PID’er

24. Kontroller udførelsestid for en proces.

$ ps -eo comm,etime,user | grep httpd

Outputtet nedenfor viser, at HTTPD-tjenesten har kørt i 1 timer, 48 minutter og 17 sekunder.

Find procesoppetid

Fejlfinding Linux-systemydelse

Hvis dit system ikke fungerer som det skal, f.eks. Hvis det er usædvanligt langsomt, kan du udføre nogle systemfejlfinding som følger.

26. Find de mest kørende processer efter højeste hukommelse og CPU-brug i Linux.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | headOR$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
Find top kørende processer

27. For at dræbe Linux-processer / applikationer, der ikke svarer eller enhver proces, der bruger høj CPU-tid.

Find først PID for processen, der ikke svarer eller applikationen.

$ ps -A | grep -i stress

Brug derefter kommandoen kill til at afslutte den med det samme.

$ kill -9 2583 2584
Find og dræb en proces

Udskriv sikkerhedsoplysninger

28. Vis sikkerhedskontekst (specifikt til SELinux) sådan.

$ ps -eMOR$ ps --context
Find SELinux-kontekst

29. Du kan også få vist sikkerhedsoplysninger i brugerdefineret format med denne kommando.

$ ps -eo euser,ruser,suser,fuser,f,comm,label
Liste over SELinux-kontekst af brugere

Udfør procesovervågning i realtid ved hjælp af urværktøj

30. Endelig, da ps viser statiske oplysninger, kan du bruge urværktøjet til at udføre procesovervågning i realtid med gentagne output, der vises efter hvert sekund som i kommandoen nedenfor (angiv en brugerdefineret ps-kommando for at nå dit mål).

$ watch -n 1 "ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head"
Overvågning i realtidsproces

Vigtigt: ps viser kun statiske oplysninger. For at se ofte opdaterede output kan du bruge værktøjer såsom htop; top og blik: de sidste to er i virkeligheden Linux-systemovervågningsværktøj.

Du vil måske også gerne læse disse følgende relaterede artikler.

  1. Sådan finder du et procesnavn ved hjælp af PID-nummer i Linux
  2. Find de mest kørende processer efter højeste hukommelse og CPU-brug i Linux
  3. En guide til Kill, Pkill og Killall-kommandoer for at afslutte en proces i Linux
  4. Sådan finder du og dræber kørende processer i Linux
  5. Sådan starter du Linux-kommando i baggrunden og løsner processen i Terminal

Articles
Previous Post

PMC (Dansk)

Next Post

Yosemite-vandreture: De bedste steder at tage fødderne i Yosemite National Park

Skriv et svar Annuller svar

Seneste indlæg

  • Verdens bedste fotografiskoler, 2020
  • Suveræne borgere tager deres regeringsfilosofi til vejene
  • Guide til reparation af stuk reparationer
  • Muckrakers (Dansk)
  • Precision Oncology

Arkiver

  • februar 2021
  • januar 2021
  • december 2020
  • november 2020
  • oktober 2020
  • september 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.