linux – 如何增加在无头用户下运行的守护程序进程的最大FD限制?

前端之家收集整理的这篇文章主要介绍了linux – 如何增加在无头用户下运行的守护程序进程的最大FD限制?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
为了增加在Ubuntu Linux机器上无头用户下运行的守护程序进程的FD限制,我们在/etc/security/limits.conf中进行了以下更改
soft nofile 10000
hard nofile 10000

我们还在/etc/pam.d/login中添加了所需的会话pam_limits.so.这些更改已反映给已注销并再次登录的所有用户.无论在这些用户下开始什么新流程都会获得新的FD限制.

但是对于在无头用户下运行的守护进程,更改没有得到反映.在无头用户下运行的守护进程可以反映更改的方式是什么?

解决方法

问题出在守护进程的启动脚本中.它使用setuidgid在无头用户下运行守护进程.像setuidgid这样的内容将不会在更改进程的用户/组时安装limits.conf中设置的资源限制.守护进程应该通过其启动脚本来为自己设置资源限制.通过在启动脚本中设置当前会话的最大FD限制,为守护程序反映了新的限制.这是通过在守护程序的lauching脚本中插入如下所示的ulimit -n行来完成的.
ulimit -n $NEW_MAX_LIMIT
exec setuidgid userxyz /pat/to/daemon.sh

猜你在找的Linux相关文章