30 kasulikku ps-i käskenäiteid Linuxi protsesside jälgimiseks


ps (protsesside olek) on natiivne Unixi/Linuxi utiliit, et vaadata teavet süsteemis töötavate protsesside valiku kohta: see loeb selle teabe/proc-failisüsteemi virtuaalsetest failidest. See on üks süsteemihalduse jaoks olulisi utiliite, mis on spetsiaalselt protsesside jälgimise all, et aidata teil mõista, mis Linuxi süsteemis toimub.

Sellel on palju võimalusi väljundiga manipuleerimiseks, kuid leiad, et väike osa neist on praktiliselt kasulik igapäevaseks kasutamiseks.

Selles artiklis vaatleme 30 kasulikku näidet ps-käskudest aktiivsete jooksvate protsesside jälgimiseks Linuxi süsteemis.

Pange tähele, et ps toodab väljundit pealkirjareaga, mis tähistab iga teabeveeru tähendust, kõigi siltide tähenduse leiate lehelt ps man.

Loetlege kõik praeguses kestas olevad protsessid

1. Kui käivitate käsu ps ilma argumentideta, kuvab see praeguse kesta protsessid.

$ ps 

Kõigi protsesside printimine erinevates vormingutes

2. Kuvage kõik aktiivsed protsessid Linuxi süsteemis üldises (Unix/Linux) vormingus.

$ ps -A
OR
$ ps -e

3. Kuva kõik protsessid BSD-vormingus.

$ ps au
OR
$ ps axu

4. Täisvormingus loendi sisestamiseks lisage lipp -f või -F .

$ ps -ef
OR
$ ps -eF

Kuva kasutaja jooksvad protsessid

5. Saate valida kõik teile kuuluvad protsessid (käsu ps käitaja, antud juhul juur), tippige:

$ ps -x 

6. Kasutaja protsesside kuvamiseks tegeliku kasutajatunnuse (RUID) või nime järgi kasutage lippu -U .

$ ps -fU tecmint
OR
$ ps -fu 1000

7. Kasutaja protsesside valimiseks tegeliku kasutajatunnuse (EUID) või nime järgi kasutage valikut -u .

$ ps -fu tecmint
OR
$ ps -fu 1000

Prindi kõik juurkasutatavad protsessid (tegelik ja tegelik ID)

8. Alltoodud käsk võimaldab teil vaadata kõiki protsessoreid, mis töötavad juurkasutaja õigustega (tegelik ja efektiivne ID) kasutajavormingus.

$ ps -U root -u root 

Kuva grupiprotsessid

9. Kui soovite loetleda kõik protsessid, mis kuuluvad teatud rühmale (tegelik grupi ID (RGID) või nimi), tippige.

$ ps -fG apache
OR
$ ps -fG 48

10. Kõigi tegeliku rühma nime (või seansi) omanduses olevate protsesside loetlemiseks tippige.

$ ps -fg apache

Protsesside kuvamine PID ja PPID järgi

11. Protsesse saate PID järgi loetleda järgmiselt.

$ ps -fp 1178

12. Protsessi valimiseks PPID järgi tippige.

$ ps -f --ppid 1154

13. Tehke valik PID-loendi abil.

$ ps -fp 2226,1154,1146

TTY kuvamisprotsessid

14. Protsesside valimiseks tty järgi kasutage lippu -t järgmiselt.

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

Prindiprotsessi puu

15. Protsessipuu näitab, kuidas süsteemis olevad protsessid on omavahel seotud; protsessid, mille vanemad on tapetud, võetakse kasutusele init (või systemd) poolt.

$ ps -e --forest 

16. Saate printida ka antud protsessi jaoks protsessipuu.

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

Prindiprotsessi lõimed

17. Protsessi kõigi lõimede printimiseks kasutage lippu -L , nii kuvatakse veerud LWP (kerge protsess) kui ka NLWP (kergete protsesside arv).

$ ps -fL -C httpd

Määrake kohandatud väljundvorming

Valikute -o või –format abil võimaldab ps ehitada kasutaja määratletud väljundvorminguid, nagu allpool näidatud.

18. Kõigi vorminguspetsifikaatorite loetlemiseks lisage lipp L .

$ ps L

19. Allolev käsk võimaldab teil vaadata protsessi PID-d, PPID-d, kasutajanime ja käsklust.

$ ps -eo pid,ppid,user,cmd

20. Allpool on veel üks näide kohandatud väljundvormingust, mis näitab failisüsteemi rühma, kena väärtust, algusaega ja protsessi kulunud aega.

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

21. Protsessi nime leidmiseks selle PID abil.

$ ps -p 1154 -o comm=

Kuva vanema ja lapse protsessid

22. Konkreetse protsessi valimiseks nime järgi kasutage lippu -C, see kuvab ka kõik selle alamprotsessid.

$ ps -C sshd

23. Leidke protsessi kõigi eksemplaride kõik PID-id, mis on kasulikud skriptide kirjutamisel, mis peavad PID-sid lugema standardväljundist või -failist.

$ ps -C httpd -o pid=

24. Kontrollige protsessi täitmise aega.

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

Allpool olev väljund näitab, et HTTPD-teenus on töötanud 1 tund, 48 minutit ja 17 sekundit.

Linuxi süsteemi jõudluse tõrkeotsing

Kui teie süsteem ei tööta näiteks nii, nagu peaks, näiteks kui see on ebatavaliselt aeglane, saate süsteemi tõrkeotsingut teha järgmiselt.

26. Leidke kõige paremini töötavad protsessid Linuxi kõrgeima mälu ja protsessori kasutamise järgi.

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

27. Tappa Linuxi protsessid/reageerimata rakendused või mis tahes protsessor, mis võtab palju protsessori aega.

Esmalt leidke reageerimata protsessi või rakenduse PID.

$ ps -A | grep -i stress

Seejärel kasutage selle koheseks lõpetamiseks käsku kill.

$ kill -9 2583 2584

Turvateabe printimine

28. Kuva selline turvakontekst (spetsiaalselt SELinuksi jaoks).

$ ps -eM
OR
$ ps --context

29. Selle käsuga saate turvateavet kuvada ka kasutaja määratud vormingus.

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

Protsessi jälgimine reaalajas Watch Utility abil

30. Lõpuks, kuna ps kuvab staatilist teavet, saate vaadata utiliiti reaalajas protsesside jälgimiseks korduva väljundiga, mis kuvatakse iga sekundi järel nagu allpool toodud käsus (määrake oma eesmärgi saavutamiseks kohandatud ps-käsk).

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

Tähtis: ps näitab ainult staatilist teavet, sageli uuendatud väljundite kuvamiseks võite kasutada selliseid tööriistu nagu pilgud: kaks viimast on tegelikult Linuxi süsteemi jõudluse jälgimise tööriistad.

Samuti võiksite lugeda järgmisi seotud artikleid.

  1. Kuidas leida protsessi nimi Linuxi PID-numbri abil
  2. Leidke Linuxis kõige paremini töötavad protsessid suurima mälu ja protsessori kasutamise järgi
  3. Juhend Kill, Pkill ja Killall käskude jaoks protsessi lõpetamiseks Linuxis
  4. Kuidas leida ja tappa jooksvaid protsesse Linuxis
  5. Kuidas käivitada Linuxi käsk taustal ja protsess protsessis lahti ühendada

Praeguseks kõik. Kui teil on jagada kasulikke ps-käsu näiteid (unustamata selgitada, mida see teeb), kasutage allolevat kommentaarivormi.