打开文件限制

打开文件限制

我正在尝试增加 Ubuntu 8.04.4 LTS 中的打开文件限制。以下是此问题中发布的信息:如何增加非 root 用户的打开文件限制?

  • 添加到/etc/sysctl.conf以下行:fs.file-max=500000
  • 添加到/etc/security/limits.conf以下几行:

    * soft nofile 10000

    * hard nofile 10000

  • 添加到/etc/pam.d/common-session(我的系统在 /etc/pam.d/ 中没有任何其他以 common-session 为前缀的文件)以下行:session required pam_limits.so
  • 系统是否重启

但打开文件限制的值仍然是1024:

# ulimit -n
1024
# cat /proc/{PID}/limits
Limit                     Soft Limit           Hard Limit           Units
Max open files            1024                 1024                 files

# cat /proc/sys/fs/file-max
500000

# sysctl fs.file-max
fs.file-max = 500000

我做错了什么以及如何增加打开文件限制?

答案1

您可以通过在内核变量 /proc/sys/fs/file-max 中设置新值来增加打开文件的最大数量,如下所示(以 root 身份登录):

sysctl -w fs.file-max=500000

上述命令强制将文件数限制为 500000 个。您需要编辑 /etc/sysctl.conf 文件并添加以下行,以便在重启后设置保持不变:

vi /etc/sysctl.conf

附加配置指令如下:

fs.文件最大值 = 500000

保存并关闭文件。

用户需要注销并重新登录才能使更改生效,或者只需输入以下命令:

sysctl -p

使用命令验证您的设置:

cat /proc/sys/fs/file-max

或者

sysctl fs.file-max

来源

相关内容