top

Pokazuje w czasie rzeczywistym listę procesów wraz z użyciem CPU i pamięci.

top to klasyczny monitor procesów w Linuksie: odświeżany na żywo widok tego, co dzieje się w systemie. Pokazuje listę uruchomionych procesów posortowaną (domyślnie) według zużycia CPU, a nad nią podsumowanie: obciążenie systemu (load average), liczbę zadań, wykorzystanie procesora i pamięci RAM oraz swapa. Gdy serwer nagle zaczyna mulić, top jest zwykle pierwszym miejscem, do którego zaglądasz, żeby sprawdzić, kto zjada zasoby.

Składnia i najważniejsze opcje

Podstawowe wywołanie jest banalnie proste: top [opcje]. Uruchomiony bez argumentów działa w trybie interaktywnym i odświeża się co kilka sekund. Najczęściej używane flagi:

  • -d ss.tt — ustawia odstęp między odświeżeniami w sekundach (można z dziesiętnymi, np. -d 0.5).
  • -n liczba — kończy działanie po zadanej liczbie odświeżeń (iteracji), zamiast kręcić się w nieskończoność.
  • -b — tryb wsadowy (batch): brak interakcji, surowy tekst na wyjściu. Idealny do zapisu do pliku albo przekazania dalej w potoku.
  • -p PID — monitoruje tylko wskazane procesy po ich PID-ach (można podać kilka po przecinku).
  • -u użytkownik — pokazuje tylko procesy danego użytkownika (po nazwie lub UID).
  • -o pole — sortuje po wybranym polu, np. %CPU lub %MEM, niezależnie od domyślnej konfiguracji.

Przykłady użycia

  • top — start w trybie interaktywnym; wciśnij q, żeby wyjść.
  • top -o %MEM — sortuje procesy według zużycia pamięci, a nie CPU. Przydatne przy polowaniu na wycieki RAM-u.
  • top -b -n 1 > procesy.txt — robi jeden „zrzut” stanu systemu do pliku. Świetne do logów i skryptów, bo nie wymaga terminala.
  • top -u www-data — pokazuje tylko procesy użytkownika www-data. Klasyk przy diagnozie obciążenia serwera WWW.
  • top -p 1234,5678 -d 2 — śledzi tylko dwa konkretne procesy, odświeżając co 2 sekundy.

Częste błędy i pułapki

Najczęstsza wpadka: zapominasz jak wyjść. To q, nie Ctrl+C (choć to drugie też zadziała). W trybie interaktywnym wielkie M sortuje po pamięci, a P po CPU — ale to skróty klawiszowe, nie mylić z opcjami wiersza poleceń.

Kolumna %CPU potrafi przekroczyć 100%, bo domyślnie sumuje wszystkie rdzenie — wciśnij i (Irix mode), żeby przełączyć na wartości względne. Pamiętaj też, że sam top zużywa trochę zasobów, więc na przeciążonej maszynie ustaw dłuższy -d, zamiast odświeżać co ułamek sekundy.

Uwaga na różnice między systemami: składnia flag opisana wyżej dotyczy Linuksa (procps-ng). Na macOS i BSD top to zupełnie inny program z odmiennymi opcjami (np. sortowanie robi się przez -o, ale -b nie istnieje) — skrypty pisane pod Linuksa tam nie zadziałają.

Powiązane komendy: htop (ładniejszy, interaktywny odpowiednik), ps (jednorazowa migawka procesów), free (pamięć), uptime (load average), kill (ubijanie procesów po PID).