30 Przydatne przykłady komendy „PS” do monitorowania procesu Linux

30 Przydatne przykłady komendy „PS” do monitorowania procesu Linux

Ps (Status procesów) jest natywnym narzędziem UNIX /Linux do przeglądania informacji dotyczących wyboru uruchomionych procesów w systemie: odczytuje te informacje z plików wirtualnych w systemie plików /proks. Jest to jedno z ważnych narzędzi do administracji systemu specjalnie w monitorowaniu procesów, aby pomóc Ci zrozumieć, co się dzieje w systemie Linux.

Ma wiele opcji manipulowania jego wyjściem, jednak znajdziesz niewielką liczbę przydatnych do codziennego użytkowania.

Przeczytaj także: Wszystko, co musisz wiedzieć o procesach w Linux [kompleksowy przewodnik]

W tym artykule przyjrzymy się 30 przydatnymi przykładami poleceń PS do monitorowania aktywnych procesów uruchamiania w systemie Linux.

Zauważ, że Ps wytwarza wyjście z linią nagłówka, która reprezentuje znaczenie każdej kolumny informacji, można znaleźć znaczenie wszystkich etykiet na Strona PS Man.

Wymień wszystkie procesy w bieżącej powładzie

1. Jeśli uruchomisz polecenie PS Bez żadnych argumentów wyświetla procesy dla bieżącej powłoki.

$ ps 
Wymień aktualne procesy uruchomione

Wydrukuj wszystkie procesy w różnych formatach

2. Wyświetl każdy aktywny proces w systemie Linux w formacie ogólnym (UNIX/LINUX).

$ ps -a lub $ ps -e 
Lista procesów w formacie standardowym

3. Wyświetl wszystkie procesy w BSD format.

$ ps au lub $ ps axu 
Lista procesów w formacie BSD

4. Aby wykonać pełną listę, dodaj -F Lub -F flaga.

$ ps -ef lub $ ps -ef 
Lista procesów w formacie długiej listy

Wyświetl procesy uruchamiające użytkowników

5. Możesz wybrać wszystkie procesy własne (biegacz polecenie PS, root w tym przypadku), wpisz:

$ ps -x 

6. Aby wyświetlić procesy użytkownika według prawdziwego identyfikatora użytkownika (Ruid) lub nazwa, użyj -U flaga.

$ ps -fu Tecmint lub $ ps -fu 1000 
Wymień procesy użytkownika według identyfikatora

7. Aby wybrać procesy użytkownika przez skutecznego użytkownika ID (EUID) lub nazwa, użyj -u opcja.

$ ps -fu Tecmint lub $ ps -fu 1000 

Wydrukuj wszystkie procesy działające jako root (prawdziwy i efektywny identyfikator)

8. Poniższe polecenie umożliwia wyświetlanie każdego uruchomionego procesu źródło uprawnienia użytkownika (prawdziwy i efektywny identyfikator) w formacie użytkownika.

$ ps -u root -u root 
Wyświetl procesy uruchamiające użytkownika root

Wyświetl procesy grupowe

9. Jeśli chcesz wymienić wszystkie procesy należące do określonej grupy (prawdziwy identyfikator grupy (RGID) lub nazwa), wpisz.

$ ps -fg apache lub $ ps -fg 48 
Wyświetl procesy grupowe

10. Aby wymienić wszystkie procesy należące do efektywnej nazwy grupy (lub sesji), wpisz.

$ ps -fg apache 

Procesy wyświetlania przez PID i PPID

11. Możesz wymienić procesy według Pid następująco.

$ ps -fp 1178 
Lista procesów PID

12. Aby wybrać proces według PPID, typ.

$ ps -f --ppid 1154 
Proces listy przez PPID

13. Dokonaj wyboru za pomocą Pid lista.

$ ps -fp 2226,1154,1146 
Lista procesów PIDS

Procesy wyświetlania przez Tty

14. Aby wybrać procesy według tty, Użyj -T flaga w następujący sposób.

$ ps -t pts/0 $ ps -t pts/1 $ ps -ft tty1 
Lista procesów TTY

DRUDNIK PROCESU DRUKUJĄCY

15. Drzewo procesu pokazuje, w jaki sposób procesy w systemie są ze sobą powiązane; Procesy, których rodzice zostali zabici, są przyjęte przez init (lub systemd).

$ ps -e - -forest 
List Tree Process

16. Możesz także wydrukować drzewo procesowe dla danego takiego procesu.

$ ps -f -Forest -c sshd lub $ ps -ef - -Forest | grep -v grep | Grep Sshd 
Widok drzewa listy procesu

Drukuj wątki procesu

17. Aby wydrukować wszystkie wątki procesu, użyj -L flaga, to pokaże LWP (lekki proces) jak również NLWP (liczba lekkich procesów) Kolumny.

$ ps -fl -c httpd 
Wymień wątki procesu

Podaj niestandardowy format wyjściowy

Używając -o Lub -format Opcje, PS pozwala budować formaty wyjściowe zdefiniowane przez użytkownika, jak pokazano poniżej.

18. Aby wymienić wszystkie specyfikatory formatu, dołącz L flaga.

$ ps L 

19. Polecenie poniżej pozwala wyświetlić Pid, PPID, Nazwa użytkownika i polecenie procesu.

$ ps -eo pid, ppid, użytkownik, cmd 
Lista procesów z nazwami

20. Poniżej znajduje się kolejny przykład niestandardowego formatu wyjściowego pokazującego grupę systemu plików, ładną wartość, czas rozpoczęcia i upływający czas procesu.

$ ps -p 1154 -o pid, ppid, fgroup, ni, lstart, etime 
Wymień informacje o identyfikatorze procesu

21. Aby znaleźć nazwę procesu za pomocą jego PID.

$ ps -p 1154 -o comm = 
Znajdź proces za pomocą PID

Wyświetl procesy rodziców i dzieci

22. Aby wybrać określony proces według nazwy, użyj flagi -C, wyświetli to również wszystkie jego procesy dziecięce.

$ ps -c sshd 
Znajdź proces rodzic-dziecko

23. Znajdź wszystko Pids wszystkich instancji procesu, przydatne podczas pisania skryptów, które należy przeczytać Pids z wyjścia lub pliku STD.

$ ps -c httpd -o pid = 
Znajdź wszystkie procesy PIDS

24. Sprawdź czas wykonywania procesu.

$ ps -eo comm, etime, użytkownik | GREP HTTPD 

Poniższe wyjście pokazuje, że usługa HTTPD działa od 1 godziny, 48 minut i 17 sekund.

Znajdź czas aktualizacji procesu

Rozwiązywanie problemów z systemem systemu Linux

Jeśli twój system nie działa tak, jak powinien, na przykład, jeśli jest niezwykle powolny, możesz wykonywać problemy z rozwiązywaniem problemów w następujący sposób.

26. Znajdź najwyższe procesy uruchomione przez najwyższe zużycie pamięci i procesora w Linux.

$ ps -eo pid, ppid, cmd,%mem,%procesor - -sort = -%mem | Głowa lub $ ps -eo PID, PPID, CMD,%MEM,%CPU - -SORT = -%CPU | głowa 
Znajdź najlepsze procesy działające

27. Aby zabić procesy Linuksa/aplikacje niereagujące lub dowolny proces, który zużywa wysoki czas procesora.

Najpierw znajdź Pid nie reagującego procesu lub aplikacji.

$ ps -a | Grep -i stres 

Następnie użyj polecenia Kill, aby natychmiast je zakończyć.

$ Kill -9 2583 2584 
Znajdź i zabij proces

Drukuj informacje o bezpieczeństwie

28. Pokaż kontekst bezpieczeństwa (szczególnie dla Selinux) lubię to.

$ ps -em lub $ ps -context 
Znajdź kontekst Selinux

29. Możesz także wyświetlać informacje o zabezpieczeniach w formacie zdefiniowanym przez użytkownika za pomocą tego polecenia.

$ ps -eo euser, Ruser, Suser, Fuser, F, comm, etykieta 
Wypisz kontekst Selinux przez użytkowników

Wykonaj monitorowanie procesów w czasie rzeczywistym za pomocą narzędzia Watch

30. Wreszcie od czasu Ps Wyświetla informacje statyczne, możesz zastosować narzędzie Watch do wykonywania monitorowania procesów w czasie rzeczywistym z powtarzalnym wyjściem, wyświetlane po każdej sekundzie jak w poniższym poleceniu (określ zwyczaj polecenie PS Aby osiągnąć swój cel).

$ Watch -n 1 'ps -eo pid, ppid, cmd,%mem,%cpu - -sort = -%mem | głowa' 
Monitorowanie procesów w czasie rzeczywistym

Ważny: PS pokazuje tylko informacje statyczne, aby wyświetlić często aktualizowane dane wyjściowe, możesz użyć narzędzi takich jak HTOP; Top i spojrzenia: ostatnie dwa to narzędzia monitorowania wydajności systemu Linux.

Możesz także przeczytać następujące powiązane artykuły.

  1. Jak znaleźć nazwę procesu za pomocą numeru PID w Linux
  2. Znajdź najwyższe procesy uruchomione przez najwyższe zużycie pamięci i procesora w Linux
  3. Przewodnik po zabiciu, Pkill i Killall poleca za zakończeniem procesu w Linux
  4. Jak znaleźć i zabić procesy uruchomione w Linux
  5. Jak rozpocząć polecenie Linux w tle i odłączyć proces w terminalu

To wszystko na teraz. Jeśli masz jakieś przydatne polecenie PS Przykłady do udostępnienia (nie zapominając o wyjaśnieniu, co robi), użyj poniższego formularza komentarza.