30 Noderīgi ps komandu piemēri Linux procesu uzraudzībai
ps (process status) ir vietējā Unix/Linux utilīta, lai skatītu informāciju par sistēmā darbojošos procesu atlasi: tā nolasa šo informāciju no virtuālajiem failiem/proc failu sistēmā. Tas ir viens no svarīgiem sistēmas administrēšanas utilītiem, kas tiek īpaši kontrolēts procesu uzraudzībā, lai palīdzētu jums saprast, kas notiek Linux sistēmā.
Tam ir daudz iespēju, kā manipulēt ar izvadi, tomēr neliels skaits no tiem praktiski noderēs ikdienas lietošanai.
Šajā rakstā mēs aplūkosim 30 noderīgus ps komandu piemērus aktīvu darbības procesu uzraudzībai Linux sistēmā.
Ņemiet vērā, ka ps ražo izvadi ar virsraksta līniju, kas atspoguļo katras informācijas kolonnas nozīmi, visu etiķešu nozīmi varat atrast ps manā lapā.
Uzskaitiet visus procesus pašreizējā čaulā
1. Ja palaižat komandu ps bez jebkādiem argumentiem, tā parāda pašreizējās čaulas procesus.
$ ps
Drukāt visus procesus dažādos formātos
2. Parādiet visus aktīvos procesus Linux sistēmā vispārīgā (Unix/Linux) formātā.
$ ps -A OR $ ps -e
3. Parādīt visus procesus BSD formātā.
$ ps au OR $ ps axu
4. Lai veiktu pilna formāta sarakstu, pievienojiet karodziņu -f
vai -F
.
$ ps -ef OR $ ps -eF
Parādīt lietotāja darbības procesus
5. Varat atlasīt visus jums piederošos procesus (komandas ps skrējējs, šajā gadījumā sakne), ierakstiet:
$ ps -x
6. Lai lietotāja procesus parādītu ar reālu lietotāja ID (RUID) vai vārdu, izmantojiet karodziņu -U
.
$ ps -fU tecmint OR $ ps -fu 1000
7. Lai atlasītu lietotāja procesus pēc faktiskā lietotāja ID (EUID) vai nosaukuma, izmantojiet opciju -u
.
$ ps -fu tecmint OR $ ps -fu 1000
Drukāt visus procesus, kas darbojas kā saknes (reāls un efektīvs ID)
8. Zemāk esošā komanda ļauj skatīt visus procesus, kas darbojas ar root lietotāja tiesībām (reālu un efektīvu ID) lietotāja formātā.
$ ps -U root -u root
Displeja grupas procesi
9. Ja vēlaties uzskaitīt visus procesus, kas pieder noteiktai grupai (reālais grupas ID (RGID) vai nosaukums), ierakstiet.
$ ps -fG apache OR $ ps -fG 48
10. Lai uzskaitītu visus procesus, kas pieder efektīvam grupas nosaukumam (vai sesijai), ierakstiet.
$ ps -fg apache
Parādīt procesus pēc PID un PPID
11. Jūs varat uzskaitīt procesus pēc PID šādi.
$ ps -fp 1178
12. Lai atlasītu procesu pēc PPID, ierakstiet.
$ ps -f --ppid 1154
13. Veiciet atlasi, izmantojot PID sarakstu.
$ ps -fp 2226,1154,1146
Attēlošanas procesi pēc TTY
14. Lai atlasītu procesus pēc tty, izmantojiet -t karodziņu šādi.
$ ps -t pts/0 $ ps -t pts/1 $ ps -ft tty1
Drukas procesa koks
15. Procesu koks parāda, kā sistēmas procesi ir saistīti viens ar otru; procesus, kuru vecāki ir nogalināti, pieņem init (vai systemd).
$ ps -e --forest
16. Varat arī izdrukāt procesa koku šādam procesam.
$ ps -f --forest -C sshd OR $ ps -ef --forest | grep -v grep | grep sshd
Drukas procesa pavedieni
17. Lai izdrukātu visus procesa pavedienus, izmantojiet karodziņu -L
, tas parādīs kolonnas LWP (vieglais process), kā arī NLWP (vieglo procesu skaits).
$ ps -fL -C httpd
Norādiet pielāgotu izvades formātu
Izmantojot opcijas -o vai –formāts, ps ļauj veidot lietotāja definētus izvades formātus, kā parādīts zemāk.
18. Lai uzskaitītu visus formātu specifikatorus, iekļaujiet karodziņu L
.
$ ps L
19. Zemāk esošā komanda ļauj apskatīt procesa PID, PPID, lietotāja vārdu un komandu.
$ ps -eo pid,ppid,user,cmd
20. Zemāk ir vēl viens pielāgota izvades formāta piemērs, kurā parādīta failu sistēmas grupa, jauka vērtība, sākuma laiks un pagājušais procesa laiks.
$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime
21. Lai atrastu procesa nosaukumu, izmantojot tā PID.
$ ps -p 1154 -o comm=
Parādīt vecāku un bērnu procesus
22. Lai izvēlētos konkrētu procesu pēc nosaukuma, izmantojiet karodziņu -C, tas parādīs arī visus tā pakārtotos procesus.
$ ps -C sshd
23. Atrodiet visus PID no visiem procesa gadījumiem, kas ir noderīgi, rakstot skriptus, kuriem PID jālasa no standarta izejas vai faila.
$ ps -C httpd -o pid=
24. Pārbaudiet procesa izpildes laiku.
$ ps -eo comm,etime,user | grep httpd
Zemāk esošajā izvadē redzams, ka HTTPD pakalpojums darbojas 1 stundu, 48 minūtes un 17 sekundes.
Linux sistēmas veiktspējas problēmu novēršana
Ja jūsu sistēma nedarbojas, kā vajadzētu, piemēram, ja tā ir neparasti lēna, dažas sistēmas problēmu novēršanas darbības varat veikt šādi.
26. Atrodiet vislabākos procesus pēc vislielākās atmiņas un procesora izmantošanas Linux.
$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head OR $ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
27. Lai nogalinātu Linux procesus/nereaģējošas lietojumprogrammas vai jebkuru procesu, kas patērē lielu CPU laiku.
Vispirms atrodiet nereaģējošā procesa vai lietojumprogrammas PID.
$ ps -A | grep -i stress
Pēc tam izmantojiet komandu kill, lai to nekavējoties izbeigtu.
$ kill -9 2583 2584
Drukāt drošības informāciju
28. Parādiet drošības kontekstu (īpaši SELinux) šādi.
$ ps -eM OR $ ps --context
Izmantojot šo komandu, drošības informāciju var parādīt arī lietotāja definētā formātā.
$ ps -eo euser,ruser,suser,fuser,f,comm,label
Veiciet reāllaika procesu uzraudzību, izmantojot Watch Utility
30. Visbeidzot, tā kā ps parāda statisko informāciju, varat izmantot pulksteņa utilītu, lai reāllaikā veiktu procesu uzraudzību ar atkārtotu izvadi, kas tiek parādīta pēc katras sekundes, kā norādīts zemāk esošajā komandā (mērķa sasniegšanai norādiet pielāgotu ps komandu).
$ watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'
Svarīgi: ps parāda tikai statisko informāciju, lai apskatītu bieži atjauninātu izvadi, varat izmantot tādus rīkus kā skatieni: pēdējie divi faktiski ir Linux sistēmas veiktspējas uzraudzības rīki.
Jūs varētu vēlēties arī izlasīt šādus saistītos rakstus.
- Kā atrast procesa nosaukumu, izmantojot Linux PID numuru
- Atrodiet vislabākos procesus pēc vislielākās atmiņas un procesora izmantošanas Linux sistēmā
- Ceļvedis komandām Kill, Pkill un Killall, lai izbeigtu procesu Linux
- Kā atrast un nogalināt skriešanas procesus Linux
- Kā palaist Linux komandu fonā un atvienot procesu terminālā
Tas pagaidām ir viss. Ja jums ir noderīgs (-i) noderīgs (-i) komandas (-u) piemērs (-i) (neaizmirstot paskaidrot, ko tas dara), izmantojiet zemāk esošo komentāru veidlapu.