如何获得修复叉子炸弹。 :(){ :|: & };:

如何获得修复叉子炸弹。 :(){ :|: & };:

我有一个朋友,他的 Raspberry Pi 上运行着 ssh 服务器(这个问题不是 RPi 特有的问题,所以这就是我在这里发帖的原因)。我通过 ssh 登录,然后运行:(){ :|: & };:,开玩笑。他发短信给我,问我做了什么,为什么他的 Pi 延迟这么严重,我告诉了他,他发回了大笑的表情符号。他问如何修复它,所以我告诉他重新启动。他照做了,并告诉我它仍然滞后,但他花了大约一分钟的时间才再次冻结。我不知道叉子炸弹在重新启动后仍然存在。他已经设法(有点)解决了这个问题。我只是问他做了什么,他回答说:“首先我尝试了 ulimit,效果甚微。然后,我从终端运行了一个 while 循环,每秒都会终止该进程。”我不知道他是如何得到要杀死的进程名称的。

所以问题是,即使每秒都有一个脚本运行来杀死进程,他的 Pi 仍然会跳出网络。我不知道为什么会发生这种情况。如何才能彻底杜绝叉子炸弹?

(顺便说一下,[据我所知]他没有生我的气,而且他也说过他没有生气)

答案1

我们非常确定这不是叉子炸弹造成的。如果他有60秒,那么有很多事情是可以跑的。

我会做:

terminal1$ wssh rpi-server cat /var/log/syslog > rpi-syslog
terminal2$ wssh rpi-server tail -f /var/log/syslog
terminal3$ wssh rpi-server top
terminal4$ wssh rpi-server dmesg

wssh等待端口打开,并立即运行 SSH,以便您尽快进入。它使用w4it-for-port-opennchttps://gitlab.com/ole.tange/tangetools/tree/master/w4it-for-port-open https://gitlab.com/ole.tange/tangetools/tree/master/wssh

相关内容