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.%CPUlub%MEM, niezależnie od domyślnej konfiguracji.
Przykłady użycia
top— start w trybie interaktywnym; wciśnijq, ż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żytkownikawww-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).