Kontrolowanie procesów
Lista procesów
Jednym ze sposobów, aby dowiedzieć się, jakie procesy są uruchomione na naszym serwerze – jest wykonanie polecenia top
:
top – 11:52:22 up 1:56, 1 user, load average: 0,69, 0,67, 0,68
Zadania:razem: 381, działających: 2, śpiących: 319, zatrzymanych: 0, zombie: 0
%CPU: 17,0 uż, 4,8 sy, 0,0 ni, 78,2 be, 0,0 io, 0,0 hi, 0,0 si, 0,0 sk
KiB RAM : 8027660 razem, 275556 wolne, 4458100 użyte, 3294004 buf/cache
KiB Swap: 2097148 razem, 2087164 wolne, 9984 użyte. 3049560 dost. RAM
PID UŻYTK. PR NI WIRT REZ WSP S %CPU %PAM CZAS+ KOMENDA
2999 norbert 20 0 4147668 762968 100044 R 57,5 9,5 26:14.92 gnome‐shell
4348 norbert 20 0 54,618g 328504 108492 S 6,0 4,1 13:18.48 code
2799 root 20 0 432900 112912 53960 S 4,7 1,4 3:39.38 Xorg
W górnej części pokazane są statystyki, natomiast w dolnej lista uruchomionych procesów.
Innym sposobem jest użycie polecenia ps
najczęsciej z dodatkowymi argumentami:
$: ps ‑ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:08 /sbin/init splash
2 ? S 0:00 [kthreadd]
3 ? I< 0:00 [rcu_gp]
Zabijanie procesów
Istnieje kilka sposobów na zabicie procesu.
Sposób klasyczny
Najpierw znajdujemy proces przy pomocy polecenia ps
wraz z poleceniem grep
:
$ ps ‑ef | grep apache2
root 1648 1 0 09:56 ? 00:00:00 /usr/sbin/apache2 ‑k start
norbert 1650 1648 0 09:56 ? 00:00:00 /usr/sbin/apache2 ‑k start
norbert 1673 1648 0 09:56 ? 00:00:02 /usr/sbin/apache2 ‑k start
Następnie, aby zabić proces, używamy polecenia kill
:
$ kill 1648
Sposób z wykorzystaniem nazwy procesu pkill
Jeżeli znamy nazwę procesu lub jej część możemy użyć polecenia pkill
:
$ pkill firefox
Polecenie działa praktycznie tak samo jak kill
, z tą różnicą, że działa na nazwach procesów, a nie ich identyfikatorach.
Możemy użyć również polecenia killall
, które wyśle sygnał do każdej działającej instancji programu:
$ killall firefox