30 Gagnleg ps stjórnunardæmi fyrir Linux ferlivöktun


ps (process status) er innbyggt Unix/Linux tól til að skoða upplýsingar um úrval af keyrandi ferlum á kerfi: það les þessar upplýsingar úr sýndarskrám í /proc skráakerfinu. Það er eitt af mikilvægu tólunum fyrir kerfisstjórnun sérstaklega undir ferlivöktun, til að hjálpa þér að skilja hvað er að gerast í Linux kerfi.

Það hefur fjölmarga möguleika til að stjórna framleiðslu sinni, en þú munt finna fáeinan fjölda þeirra næstum gagnlegt til daglegrar notkunar.

Í þessari grein munum við skoða 30 gagnleg dæmi um ps skipanir til að fylgjast með virkum hlaupandi ferlum á Linux kerfi.

Athugaðu að ps framleiðir úttak með fyrirsagnarlínu, sem táknar merkingu hvers upplýsingadálks, þú getur fundið merkingu allra merkinga á ps man síðunni.

Listaðu alla ferla í núverandi skel

1. Ef þú keyrir ps skipunina án nokkurra röka, sýnir hún ferla fyrir núverandi skel.

$ ps 

Prentaðu alla ferla á mismunandi sniðum

2. Sýndu hvert virkt ferli á Linux kerfi á almennu (Unix/Linux) sniði.

$ ps -A
OR
$ ps -e

3. Sýna alla ferla á BSD sniði.

$ ps au
OR
$ ps axu

4. Til að framkvæma skráningu á fullu sniði skaltu bæta við -f eða -F fánanum.

$ ps -ef
OR
$ ps -eF

Sýna notanda keyrandi ferli

5. Þú getur valið alla ferla í þinni eigu (hlaupari ps skipunarinnar, rót í þessu tilfelli), skrifaðu:

$ ps -x 

6. Notaðu -U fánann til að sýna ferla notanda eftir raunverulegu notandaauðkenni (RUID) eða nafni.

$ ps -fU tecmint
OR
$ ps -fu 1000

7. Til að velja ferla notanda eftir virku notandaauðkenni (EUID) eða nafni, notaðu -u valkostinn.

$ ps -fu tecmint
OR
$ ps -fu 1000

Prentaðu alla ferla sem keyra sem rót (raunverulegt og skilvirkt auðkenni)

8. Skipunin hér að neðan gerir þér kleift að skoða hvert ferli sem keyrir með rótnotendaréttindi (raunverulegt og skilvirkt auðkenni) á notendasniði.

$ ps -U root -u root 

Sýna hópferla

9. Ef þú vilt skrá alla ferla í eigu ákveðins hóps (raunverulegt hópauðkenni (RGID) eða nafn), sláðu inn.

$ ps -fG apache
OR
$ ps -fG 48

10. Til að skrá alla ferla sem eru í eigu virkt hópheiti (eða lotu), sláðu inn.

$ ps -fg apache

Sýna ferli eftir PID og PPID

11. Þú getur skráð ferla eftir PID sem hér segir.

$ ps -fp 1178

12. Til að velja ferli eftir PPID, sláðu inn.

$ ps -f --ppid 1154

13. Veldu val með PID lista.

$ ps -fp 2226,1154,1146

Sýna ferli eftir TTY

14. Til að velja ferli eftir tty, notaðu -t fánann sem hér segir.

$ ps -t pts/0
$ ps -t pts/1
$ ps -ft tty1

Prenta vinnslutré

15. Ferlatré sýnir hvernig ferlar í kerfinu eru tengdir hver öðrum; ferli þar sem foreldrar hafa verið drepnir eru samþykktir af init (eða systemd).

$ ps -e --forest 

16. Þú getur líka prentað vinnslutré fyrir tiltekið ferli eins og þetta.

$ ps -f --forest -C sshd
OR
$ ps -ef --forest | grep -v grep | grep sshd 

Prenta ferli þræði

17. Til að prenta alla þræði ferlis, notaðu -L fánann, þetta mun sýna LWP (létt ferli) sem og NLWP (fjöldi léttu ferla) dálkana.

$ ps -fL -C httpd

Tilgreindu sérsniðið úttakssnið

Með því að nota -o eða –snið valkostina, gerir ps þér kleift að búa til notendaskilgreint úttakssnið eins og sýnt er hér að neðan.

18. Til að skrá alla sniðforskriftina skaltu láta L fána fylgja með.

$ ps L

19. Skipunin hér að neðan gerir þér kleift að skoða PID, PPID, notandanafn og skipun ferlis.

$ ps -eo pid,ppid,user,cmd

20. Hér að neðan er annað dæmi um sérsniðið úttakssnið sem sýnir skráarkerfishóp, gott gildi, upphafstíma og liðinn tíma ferlis.

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

21. Til að finna ferli nafn með því að nota PID þess.

$ ps -p 1154 -o comm=

Sýna foreldra- og barnferla

22. Til að velja tiltekið ferli eftir nafni þess, notaðu -C fána, þetta mun einnig sýna öll undirferli þess.

$ ps -C sshd

23. Finndu öll PID allra tilvika ferlis, gagnlegt þegar þú skrifar forskriftir sem þurfa að lesa PID úr std úttak eða skrá.

$ ps -C httpd -o pid=

24. Athugaðu framkvæmdartíma ferlis.

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

Úttakið hér að neðan sýnir að HTTPD þjónustan hefur verið í gangi í 1 klukkustund, 48 mínútur og 17 sekúndur.

Úrræðaleit af afköstum Linux kerfisins

Ef kerfið þitt virkar ekki eins og það ætti að vera, til dæmis, ef það er óvenjulega hægt, geturðu framkvæmt einhverja kerfisbilanaleit sem hér segir.

26. Finndu helstu ferla í gangi eftir hæstu minni og örgjörvanotkun í Linux.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
OR
$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head

27. Að drepa Linux ferla/forrit sem svara ekki eða hvaða ferli sem er sem tekur mikinn CPU tíma.

Fyrst skaltu finna PID ferlisins eða forritsins sem ekki svarar.

$ ps -A | grep -i stress

Notaðu síðan kill skipunina til að hætta henni strax.

$ kill -9 2583 2584

Prentaðu öryggisupplýsingar

28. Sýndu öryggissamhengi (sérstaklega fyrir SELinux) eins og þetta.

$ ps -eM
OR
$ ps --context

29. Þú getur líka birt öryggisupplýsingar á notendaskilgreindu sniði með þessari skipun.

$ ps -eo  euser,ruser,suser,fuser,f,comm,label

Framkvæmdu rauntíma ferlivöktun með því að nota Watch Utility

30. Að lokum, þar sem ps birtir truflanir upplýsingar, geturðu notað úra tólið til að framkvæma rauntíma eftirlit með ferli með endurteknum útgangi, birt eftir hverja sekúndu eins og í skipuninni hér að neðan (tilgreindu sérsniðna ps skipun til að ná markmiði þínu).

$ watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'

Mikilvægt: ps sýnir aðeins truflanir upplýsingar, til að skoða oft uppfærða úttak geturðu notað verkfæri eins og augnaráð: síðustu tvö eru í raun Linux kerfiseftirlitstæki.

Þú gætir líka viljað lesa eftirfarandi tengdar greinar.

  1. Hvernig á að finna ferli nafn með PID númeri í Linux
  2. Finndu helstu ferla í gangi eftir mestu minni og örgjörvanotkun í Linux
  3. Leiðbeiningar um Kill, Pkill og Killall skipanir til að ljúka ferli í Linux
  4. Hvernig á að finna og drepa hlaupandi ferli í Linux
  5. Hvernig á að ræsa Linux stjórn í bakgrunni og aftengja ferli í flugstöðinni

Það er allt í bili. Ef þú hefur eitthvað gagnlegt ps skipunardæmi til að deila (ekki gleyma að útskýra hvað það gerir), notaðu athugasemdareyðublaðið hér að neðan.