前言
最近遇到的一个问题,在Ubuntu系统下修改/etc/security/limits.conf
不生效,查了多种资料都说不用重启,但是我改完就是不生效,多次尝试之后发现Ubuntu系统有毒。
尝试过程
通过 ulimit -n
命令可以查询到当前系统单个进程允许打开的文件描述符:
1 | $ ulimit -n |
才1024个,放到游戏服务器上显然不太够用,于是使用命令 ulimit -n 65535
手动调大了,但是这种方式只能对当前登录session有效,下次新的连接再启动进程数值又回去了,想要一劳永逸,就得修改/etc/security/limits.conf
文件,打开文件加入下面的内容:
1 | * soft nofile 65535 |
关闭文件,退出重新登录,运行 ulimit -n
命令发现还是1024,奇怪!
后续有尝试了网络上常常提到的 pam_limits
配置,按步骤修改后不好使,查找 /etc/systemd/user.conf
文件配置也无法对应,最后查到一种解决方式,将 limits.conf 文件中的 *
写成具体的用户名就好了
1 | root soft nofile 65535 |
之前我在CentOS系统上一直是用星号的,每想到在Ubuntu系统上被坑了一次
总结
ulimit -n 65535
命令可以直接将单个进程打开的文件描述符限制扩大到65535- 修改
/etc/security/limits.conf
文件不需要重启系统,退出ssh重新登录记录 - 在CentOS中修改 limits.conf 文件中的用户名可以用
*
,但是在Ubuntu中需要写具体用户名
高位易跌倒,高位易昏头,面对巨大的诱惑,想要做到不被拉下水是在太难了~
2023-8-10 22:34:28