The limit of ulimit -Hn



使用试验和错误,我发现我可以给ulimit -Hn而不得到错误的最大数量是1048576。这个数字从何而来?我的sys.fs.file-max20000500(2000万)

实际上,这个限制可以增加。设置fs.nr_open=5242880/etc/sysctl.conf中,运行sysctl -p并重新登录。你的极限就是现在500万年!

实际上,这是在Linux内核中硬编码的,在fs/file.c:

int sysctl_nr_open __read_mostly = 1024*1024;

并等于您指定的数字。

试图使其无限的相关提交:

  • https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=0c2d64fb6cae9aae480f6a46cfe79f8d7d48b59f
  • https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=60fd760fb9ff7034360bab7137c917c0330628c2

看起来从那以后就没人碰过了

最新更新