让人无语:Centos7.5 修改limits.conf open files后重启也不生效的原因和解决办法

文章目录

  • Centos7.5 修改limits.conf open files后不生效
    • 错误
    • 排错历程
    • 总结

Centos7.5 修改limits.conf open files后不生效

错误

  • elasticsearch启动时,报错max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

排错历程

  • 之前遇到过,参考老方法直接处理(如下):
    切换到root账户下:
    vi /etc/security/limits.conf添加或修改以下配置
* hard nofile 65536
* soft nofile 65536

用户退出后重新登录生效(不需要重启Linux机器)

  • 结果使用ulimit -a查看后发现没生效,百度了一堆,找了一篇最全的一篇(CentOS 6 修改/etc/security/limits.conf不生效 解决方法(配置elasticsearch时))试了下,还是不行
  • 想着是不是必须重启,怀着忐忑的心情使用重启命令(shutdown -r now)搞了2遍还是不行,气炸了
  • 最后看到一篇博客,说可能是在环境变量写死了,结果发现真是这样,运维在/etc/profile加了行ulimit -n 65535,导致在limits.conf的修改,无论是否重启,一直无法生效
  • /etc/profile删除了ulimit -n 65535,退出用户,重新进入,生效
  • 使用 su - es到es账户启动elasticsearch,成功

总结

  • centos7.5 修改 limits.conf 里的配置,不需要重启,退出重新进就能生效
  • /etc/profile环境变量里的参数配置最优先,覆盖limits.conf 里的配置
  • 所有的问题,都会有原因,越是找不到原因,越可能是一个非常傻叉的错误

你可能感兴趣的:(Linux,异常报错,centos,limits.conf,open,files65535,max,file,descr,修改文件打开数重启不生效)