/
Pack Hosting Panel

Achtergrond processen

Hoe kun je achtergrond processen beheren.


Inzicht en stoppen

Gebruik de volgende commando's als je wilt weten welke achtergrond processen er lopen en deze wilt stoppen.

ps aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
someuser    1170  0.0  0.0 151232  1992 ?        Sl    2019  50:29 /usr/bin/redis-server 127.0.0.1:0
someuser    1172  0.0  0.0 151232  1988 ?        Sl    2019  50:22 /usr/bin/redis-server 127.0.0.1:0
someuser    2000  0.0  0.0 1136972 10256 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2004  0.0  0.0 1136972 10256 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2010  0.0  0.0 1136972 10248 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2013  0.0  0.0 1136972 10252 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2017  0.0  0.0 1136972 10252 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2021  0.0  0.0 1136972 10252 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2030  0.0  0.0 1136972 10248 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2033  0.0  0.0 1136972 10248 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2038  0.0  0.0 1136972 10244 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2039  0.0  0.0 1136972 10244 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2043  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2049  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2052  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2057  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2063  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser    2066  0.0  0.0 1136972 10240 ?       S     2019   0:00 php-fpm: pool php70-someuser-website.com
someuser  104977  0.0  0.0 780800 64508 ?        Sl   03:00   0:00 /usr/bin/hhvm -m server -c /etc/hhvm.d/someuser-website.com.ini
someuser  128392  0.0  0.0 116588  3460 pts/0    Ss+  19:09   0:00 -bash
someuser  131513  0.0  0.0 217640 12924 ?        Ss   Jan31   1:57 /usr/bin/python /usr/bin/supervisord -n -c /etc/supervisor/someuser.conf
someuser  131547  0.5  0.1 368324 160500 ?       Sl   Jan31  55:26 /usr/bin/redis-server 127.0.0.1:6385
someuser  131548  138  1.0 11902864 1443848 ?    Sl   Jan31 13629:09 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+DisableExplicitGC -Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:
someuser  133746  0.0  0.0 116456  2960 pts/1    Ss+  19:36   0:00 -bash
someuser  147910  3.0  0.0 116456  3192 pts/2    Ss   20:14   0:00 -bash
someuser  147959  0.0  0.0 151156  1828 pts/2    R+   20:14   0:00 ps aux

We zien hier dat het proces met pid 131548 al erg lang loopt en ook nog eens veel CPU gebruikt. Dit proces kunnen we afbreken met het volgende commando:

kill 131548

Als een proces echt hardnekkig is en ook niet meer reageert op een SIGTERM kun je ook een SIGKILL sturen. Dit zorgt ervoor dat een proces vanuit het OS geforceerd gestopt wordt. Hierdoor krijgt het proces ook niet meer de mogelijkheid zichzelf netjes op te ruimen en kan het dus voorkomen dat er nog child processen of andere achterblijfsels aanwezig zullen blijven.

kill -9 131548

Lees https://linuxhandbook.com/sigterm-vs-sigkill/ voor meer uitleg over de verschillen tussen SIGTERM en SIGKILL.

Als je alle processen van een bepaald type in 1 keer wilt stoppen kun je killall gebruiken. Om PHP te resetten kun je het volgende commando uitvoeren:

killall php-fpm

screen

Als je een achtergrond proces wilt starten welke nog door moet gaan kun je screen gebruiken.

Bijvoorbeeld:

screen sleep 100

Dit scherm kun je verlaten met de toetsencombinatie CTRL+A, CTRL+D. Om weer terug te keren gebruik je screen -r.