/etc/security/limits.conf 未应用

/etc/security/limits.conf 未应用

我有/etc/security/limits.conf,但似乎没有应用:

a soft nofile 1048576 # default: 1024
a hard nofile 2097152
a soft noproc 262144  # default 128039
a hard noproc 524288  

我的用户名在哪里a,当我运行ulimit -Hn和时ulimit -Sn,它显示:

4096
1024

中只有一个其他文件,其/etc/security/limits.d内容是:

scylla  -  core     unlimited
scylla  -  memlock  unlimited
scylla  -  nofile   200000
scylla  -  as       unlimited
scylla  -  nproc    8096

我也尝试将这些值附加到/etc/security/limits.conf然后重新启动,然后执行以下操作:

echo '
session required pam_limits.so
' | sudo tee -a /etc/pam.d/common-session

但没有成功。我的操作系统是Ubuntu 17.04.

答案1

https://superuser.com/questions/1200539/cannot-increase-open-file-limit-past-4096-ubuntu/1200818#_=_

显然自 Ubuntu 16 以来就有一个错误。

基本上:

  1. 编辑/etc/systemd/user.conf软限制,然后添加DefaultLimitNOFILE=1048576.
  2. 编辑/etc/systemd/system.conf硬限制,然后添加DefaultLimitNOFILE=2097152.

信用去往@mkasberg

答案2

推荐创建目录而/etc/systemd/*.d/不是直接编辑。/etc/systemd/system.conf/etc/systemd/user.conf

  1. /etc/systemd/system.conf.d/limits.conf使用以下内容创建一个新文件:

    [Manager]
    DefaultLimitNOFILE=1048576:2097152
    DefaultLimitNPROC=262144:524288
    
  2. 以 root 身份运行systemctl daemon-reexec

  3. 注销并重新登录。

  4. ulimit -a分别使用或ulimit -n和来检查最大打开文件数和最大进程数的新限制ulimit -u

请参阅systemd-system.conf联机帮助页了解详情。

相关内容