小编Pla*_*ton的帖子

为什么我不能用叉形炸弹使我的系统崩溃?

最近我一直在挖掘有关 GNU/Linux 进程的信息,我遇到了臭名昭著的 fork 炸弹:

:(){ : | :& }; :
Run Code Online (Sandbox Code Playgroud)

理论上,它应该无限复制自己,直到系统耗尽资源......

但是,我已经尝试在CLI DebianGUI Mint发行版上进行测试,它似乎对系统影响不大。是的,创建了大量进程,一段时间后我在控制台消息中阅读了如下内容:

bash: fork: 资源暂时不可用

bash: fork: 重试: 没有子进程

但是一段时间后,所有进程都会被杀死,一切都恢复正常。我读过ulimit为每个用户设置了最大进程数,但我似乎无法将其提高到很远。

什么是针对叉形炸弹的系统保护?为什么在一切都冻结或至少滞后很多之前它不会自我复制?有没有办法用叉子炸弹真正使系统崩溃?

linux process fork ulimit

58
推荐指数
3
解决办法
1万
查看次数

标签 统计

fork ×1

linux ×1

process ×1

ulimit ×1