我在这里看到了关于提高特定用户在 Linux 系统上的打开文件限制的各种帖子(根据所讨论的 Linux 发行版,以各种不同的方式执行)。
我有一个运行 Dovecot 的 Ubuntu 8.04.4 LTS 服务器,用户名为“dovecot”;
ps aux | grep dovecot
dovecot 473 0.0 0.0 14320 2152 ? S 12:11 0:00 imap-login
dovecot 1619 0.0 0.0 14324 2096 ? S Jan25 0:05 imap-login
dovecot 2652 0.0 0.0 14180 1892 ? S 13:44 0:00 pop3-login
dovecot 3627 0.0 0.0 14180 1892 ? S 14:13 0:00 pop3-login
dovecot 3776 0.0 0.0 14180 1892 ? S 14:16 0:00 pop3-login
dovecot 4056 0.0 0.0 14320 2112 ? S 14:19 0:00 imap-login
.....
ps aux | grep dovecot | wc
178
如何提高服务的打开文件限制?我是否对服务运行的用户执行相同的操作来提高使用限制?
因此,在这个系统上,我可以为 dovecot 用户增加 /etc/security/limits.conf 中的限制,但这与我的服务有何关系。我是否需要重新启动服务才能使新设置生效,或者随着新进程的产生它们是否会继承新设置?
我看不出更改此限制将如何与长期运行的服务相关联,而不是与登录和注销的用户相关联。
对于 CentOS 7(我假设任何其他 systemd-converts)你需要编辑服务文件。您可以使用它来简单地覆盖服务文件,因此它是升级安全的:
然后添加:
将 4096 更改为您喜欢的任何内容。
“我是否对服务运行的用户执行相同的操作来提高使用限制?” - 是的。该服务在用户的限制下运行,因此一旦提高限制并重新启动服务,它将具有新的限制。