我如何终止 forkbomb 进程?

我如何终止 forkbomb 进程?

我从普通用户账户启动了 forkbomb,比如“user1”,我正在运行一个脚本,它说

killall -u user1

但它并没有解决问题。

答案1

重启电脑

如果你不能,你可以尝试:

killall -STOP -u user1
killall -KILL -u user1

如果“永久解决方案”的意思是防止这种情况再次发生,那么你实际上做不到,但你可以简单地减少ulimit问题用户的数量并忽略他们。

答案2

while true; do killall -u user1; done

答案3

我同意柯林的回答,但我会将 -STOP 包装到脚本中并使用 nice --20 来确保 kill 脚本比正在运行的 1000 个炸弹获得更多的 CPU。

echo "while [ 1 ]; do killall -STOP bombprocess ; done" > killscript.sh

或者

echo "while [ 1 ]; do killall -STOP -u userrunningthebomb ; done" > killscript.sh

然后

nice --20 ./killscript.sh

然后,当它们全部停止后

killall -KILL bombprocess(此时您应该已经可以再次使用 ps)

相关内容