现在,我知道如何:
- 查找每个进程的打开文件限制:
ulimit -n
- 计算所有进程中所有打开的文件:
lsof | wc -l
- 获取允许的最大打开文件数:
cat /proc/sys/fs/file-max
我的问题是:为什么Linux中的打开文件有限制?
2
@Rob用Google搜索了一下,发现它是一个叉子炸弹,它可以用来解释打开文件的限制吗?
—
xanpeng 2012年
嗯,进程限制和文件限制很重要,因此分叉炸弹之类的事情不会破坏所有用户的服务器/计算机,只会破坏做到这一点的用户,而且只能暂时破坏所有用户。否则,共享服务器上的某人可能会掀起一个前哨炸弹,并将其完全击倒给所有用户,而不仅仅是他们自己。
—
罗布
好人总结了一些非常有用的命令!:+1:
—
约书亚·品特2015年
@ Rob,fork炸弹与它没有任何关系,因为文件限制是每个进程的,并且每次您进行fork时,它都不会打开新的文件句柄。
—
psusi