debian设置limits.conf
最近已经把自己的游戏框架主要功能完成得差不多了,决定将自己的开发环境从debian7升级到debian9,不然太多第三方依赖都跟不上了。debian10刚出来,MongoDB还没适配,所以暂不考虑。
我的主系统是ubuntu14.04,通过VirtualBox安装debian9作为开发系统。本地的目录通过VirtualBox的目录共享功能挂载上去,然后用root用户进行编译、运行。
部署开发环境,少不了要修改/etc/security/limits.conf,让系统可以coredump,方便debug。顺便改下最大文件数。这本来也很简单,就加两行配置。
* soft core unlimited
* soft nofile 65535
然而重启后用ulimit -a查看发现它死活不生效。我虽然不记得当初部署debian7时改了哪些配置,但debian7的配置文件就是这么改的。猜测是debian9做了改动导致没生效,只能网上找资料一步步测试。
1. pam模块是否启用
/etc/pam.d/login
/etc/pam.d/sshd
/etc/pam.d/su
查看以上几个文件,都包含 session required pam_limits.so 所以是启用了的。
2. ssh是否启用pam
我是通过ssh连上去的开发的,这个也需要排查下
cat /etc/ssh/sshd_config | grep UsePAM
UsePAM yes
ssh也是启用的。然后在VirtualBox的界面登录也发现配置没生效,这个原因排除掉。
3. hard limit没设置
man limits.conf里有说到
for enforcing hard resource limits. These limits are set by the superuser and enforced by the Kernel. The user cannot raise his requirement of system resources above such values.
虽然之前从来没设置过hard limit,但也总得试下。于是我又加了一行
* hard nofile 65535
重启后也没有生效。
4. 查看日志,看是否有错误
cat /var/log/auth.log Jul 21 12:25:01 debian CRON[686]: pam_unix(cron:session): session opened for user root by (uid=0)
Jul 21 12:25:01 debian CRON[686]: pam_unix(cron:session): session closed for user root
Jul 21 12:25:29 debian login[692]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)也不
也没有发现什么异常,说明配置格式、权限都没什么问题。
到这里,网上常用的方法该试的都试了,都没能让。最后在https://serverfault.com/questions/610130/how-to-set-ulimit-value-permanently上有一个回复
Boom. * wildcard doesn't work for root. I added root instead of *, and it's working. Thank you! – NiCk Newman Jun 13 '16 at 15:25
*这个通配符对root用户没有效的。我测试了下,确实如此,另一个号用ulimit -a查看配置修改成功。由于我部署环境一直用root,没发现这个。最后把用户名都改为root,重启后配置生效。
root soft core unlimited
root soft nofile 65535
* soft core unlimited
* soft nofile 65535
网上查了下资料,发现确实有这个限制。
man 5 limits.conf NOTE: group and wildcard limits are not applied to the root user. To set a limit for the root user, this field must contain the literal username root.
debian设置limits.conf的更多相关文章
- /etc/security/limits.conf 设置
jrhdpt01:/root# cat /etc/security/limits.conf * soft nofile 65535 * hard nofile 65535 * soft npro ...
- linux /proc/sys/fs/file-nr /proc/sys/fs/file-max /etc/security/limits.conf 三者的关联
ulimit -n 对应 /etc/security/limits.conf 文件设置 问题: Can’t open so many files 对于linux运维的同学们,相信都遇到过这个问题. 在 ...
- linux资源使用配置文件 /etc/security/limits.conf和ulimit
limits.conf文件实际上是linux PAM中pam_limits.so的配置文件,而且只针对于单个会话. limits.conf的格式如下: <domain> <type& ...
- CentOS6.x 下 /etc/security/limits.conf 被改错的故障经历
Intro 我司本小厂,每个员工都是身兼数职,所以开发人员直接登录线上服务器改东西是常态.有些开发人员,自持水平较高(的确水平也是较高,但缺乏对系统的敬畏),所以总是越俎代庖,改一些本身应该是线上运维 ...
- 长连接锁服务优化实践 C10K问题 nodejs的内部构造 limits.conf文件修改 sysctl.conf文件修改
小结: 1. 当文件句柄数目超过 10 之后,epoll 性能将优于 select 和 poll:当文件句柄数目达到 10K 的时候,epoll 已经超过 select 和 poll 两个数量级. 2 ...
- /etc/security/limits.conf不生效
总结下来发现要使limits.conf生效,需要在 /etc/ssh/sshd_config 配置中 设置 UsePAM yes UseLogin yes #这个保证其他的用户也能修改设置 ...
- /etc/security/limits.conf的相关说明
今天遇到root账户登录不了的情况,很是郁闷,即使单用户修改了root密码也不能登录. 所以就特意看了一下/etc/security/limits.conf,发现是下面这样的.感觉呗坑了许久.(标红线 ...
- [转帖]ulimit、limits.conf、sysctl和proc文件系统
ulimit.limits.conf.sysctl和proc文件系统 来源:https://blog.csdn.net/weixin_33918114/article/details/86882372 ...
- limits.conf文件工作原理
1. limits.conf 描述 limits.conf文件实际是Linux PAM(插入式认证模块,Pluggable Authentication Modules)中 pam_limits.so ...
随机推荐
- eclipse、MyEclipse 修改字符集和JDK
eclipse 中UTF-8设置 1.windows->Preferences 打开"首选项"对话框: 2.然后,general->Workspace,右 侧Tex ...
- unity3d 嵌入iOS的 In App Purchase 应用程序内购买
Unity做东西是快,但是有些功能是需要额外开发的,比如 IAP (In App Purchase,应用程序内购买) 还好unity提供了灵活的扩展功能,允许嵌入原生代码来做一些unity未实现的功能 ...
- ORA-00054:Orcacle表锁定
查询被锁的session_id select session_id from v$locked_object; 查询结果----------------------SESSION_ID8 查询被锁se ...
- markdown居中对齐,左对齐,右对齐
Markdown语法本身没有居中,但Markdown中支持基本的HTMl语法,可以使用HTML语法. 居中: <center>居中</center> 左对齐: <p al ...
- Python学习笔记——esle和with 语句
1. else与while组合 def showMaxFactor(num): count = num // 2 while count > 1: if num % count == 0: pr ...
- windows下编译配置libnet-1.2-rc3
1.下载winpcap(一个底层驱动,可以嗅探.过滤网卡数据包,发包).exe安装包,傻瓜一步式安装 2.下载WpdPack_4_1_2,这个是winpcap的开发者包,解压之后只需要配置相关路径. ...
- linux 抓包工具tcpdump和tshark
yum install tcpdump tcpdump -nn -c 100 抓一百条 tcpdump -nn -i eth0 指定网卡 tcpdump -nn port 22 指定端口 tcpdum ...
- 再jsp页面中使用kindeditor 的方法
1.创建一个动态web工程 2.建立一个static库文件夹把CSS,JS样式放进去 3. 复制HTML代码到jsp页面中 4.在相对路径中加上一个"static/" 5.运行截图
- 动态代理 aop切面实现事务管理
1.定义接口和实现 public interface UserService { public String getName(int id); public Integer getAge(int id ...
- python列表推导同filter和map的比较
首先介绍下filter和map: filter: filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表. 该接收两个参数,第一个为函数,第二个为序列,序列的每个元 ...