OS X上的叉炸弹保护 – 限制ulimit进程?

大约一年前就被介绍给了UNIX迷人的世界,但是由于缺乏一个更好的expression方式,由于我的修补,今天“与快速旋转的刀片相撞的浪费” 我决定是时候从专业人士那里得到一些build议了。

我只是想知道我的select是什么保护从叉炸弹运行OS X 10.6的计算机。 我这样问是因为(我是完整的山雀)我以某种方式假定,由于系统不易受到BASH标准叉车的伤害,所以在运行时给我以下几点:

"-bash: fork: Resource temporarily unavailable" 

这也不会容易被写成一个单一的class轮C.只要说我跑了,一切都停了下来,显然没有什么我可以做(除了重新启动),因为我无法启动任何新的进程。 我看了一下ulimit,但是现在一切都已经过去了。

如果我为每个使用ulimit的用户设置一个(较低的)进程限制,那么我可以作为另一个用户ssh进入,并以某种方式杀死fork炸弹? 我对这一切都是相当陌生的,正如你所看到的那样 – 考虑到这一点,我不确定我将如何杀死这个东西。

无论如何,我想知道如何防止一个叉式炸弹(当运行相同的分叉C程序时)再次发生,我知道这可能是一个个人机器矫枉过正,但如果我可以使系统less一点容易导致用户崩溃,我想这样做。 为了我自己的安宁,如果没有别的。

总结(对不起,我的漫长和不连贯的漫不经心,这里已经很晚了,你也许可以告诉 – 我不会在网上发帖太多了,我更多的是一个老实人;也请不要活着吃我我已经发布了一个愚蠢的问题!:-p

  • 我怎样才能保护我的Mac免受炮弹的轰炸? (使用ulimit,如果这是最好的办法)

  • 如果ulimit是如何做到这一点,我该如何做ulimit更换棒? 如果我没有弄错,它会在重启时重置为默认值。

  • 做完以上两点之后,我将如何杀死一个叫做DO_NOT_EXECUTE的正在运行的叉子炸弹,这个炸弹正在遍地扩大,并填满了我所有的工序槽? 理想情况下,我想和BASH fb给出的错误一样,当我运行C的可执行文件,并允许我简单的CTRL-C退出,但我会采取任何方法,我可以find允许我恢复无需重启。

谢谢大家的耐心(以及任何可能的帮助)

OMS

  • Active Directory帐户locking策略在Mac上不起作用
  • 错误403当git推(多个github帐户在同一个mac)
  • 如何使用本地(OSX)编辑器编辑远程(RHEL)文件?
  • 如何在OS X上设置全局path?
  • 基于login的转发代理控制的Mac OS X 10.6?
  • OS X办公室中潜在的双重NAT问题
  • 2 Solutions collect form web for “OS X上的叉炸弹保护 – 限制ulimit进程?”

    Mac OS X …“fork:资源暂时不可用”

    完全涵盖了这一点,包括使所需的变更持续下去。 我原以为你会因为这个限制的差异而受到保护

     $ sysctl kern.maxproc kern.maxprocperuid 

    当然,如果是推出叉炸弹的用户,没有这样的运气!

    看看sysctl来调整内核的限制。 出于某种原因,MacOS X手册页没有提到kern.maxprocperuid ,正如多年前在Mac OS X Hints中提到的那样。

    至于很快摆脱很多进程,我会用killall

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.