为非 root 用户设置 ulimit

Lak*_*arg 5 permissions ulimit 18.04

这是我的 elasticsearch 应用程序,它在启动时终止,显示:

bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
Run Code Online (Sandbox Code Playgroud)

我在我的 limits.conf 文件中进行了更改nofile以更改为 65536,如下所示:

*       soft    nofile  65536
*       hard    nofile  65536
Run Code Online (Sandbox Code Playgroud)

并为同一用户(非 root 用户)重新启动一个新会话,但是当我打开一个新会话时,我在终端上得到的第一件事是:

bash: ulimit: max user processes: cannot modify limit: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

我的 ulimit 也没有改变。可能是什么原因?虽然我能够成功地为 root 用户更改它。

Geo*_*sen 10

这里我看到必须更改三个文件:

  1. /etc/systemd/user.conf
  2. /etc/systemd/system.conf, 和
  3. /etc/security/limits.conf

除了您在第三个文件中所做的更改之外,在前两个文件中添加以下行:

DefaultLimitNOFILE=65536
Run Code Online (Sandbox Code Playgroud)