Centos 修改limits.conf open files后不生效的解决办法

线上几台APACHE服务器报过三、四次open files的问题,导致服务不可用,执行ulimit -n 查看后,发现是默认的1024,找到原因所在了,就去修改下/etc/security/limits.conf吧:

* soft nofile 65535
* hard nofile 65535
  • 1
  • 2

重新登录系统,再次执行ulimit -n后发现,还是1024!!!WTF!!!! 
百度不得其解,翻出去后又大部分都是英文,苦苦翻译半天还是没有得到答案,搭建测试环境,用相同的系统版本来测试,发现问题消失了! 
然后就查各种关于linux关于open files的东西,几乎都在说是没有加入/etc/pam.d/目录下的文件没有limits.so这个库文件的原因,但是对比测试环境和线上环境,是一样的!突然想到了PAM这个东西,之前修改/etc/ssh/sshd_config这个文件的时候看到过UsePAM这个东西,但是一直没有注意是干什么用的,对比两个文件后发现,线上的UsePAM是注释掉的:

#UsePAM yes
  • 1

去掉注释,重启sshd,竟然报错了,提示unsupport PAM,比较了两个环境下的openssh版本,线上的环境版本比较低,果断升级,重启 sshd服务, 
重新登录,终于生效了。

时间: 2024-10-29 13:17:52

Centos 修改limits.conf open files后不生效的解决办法的相关文章

新版MySql 5.6.20,安装后无法登陆的解决办法

1.按照提示安装好mysql 2.运行cmd 进入mysql的安装目录,我的安装目录C:\Program Files\MySQL\MySQL Server 5.6\bin 输入 cd C:\Program Files\MySQL\MySQL Server 5.6\bin 3.采用mysqld将mysql注册为服务,命令为:mysqld -install MySQL 4.启动服务:net start MySQL 5.然后登陆,因为root用户的默认密码为空,直接回车进入 mysql -u root

[.net] 关于CS0016: Could not write to output file ‘c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files… ‘Access is denied.’ 的解决办法

[.net] 关于CS0016: Could not write to output file ‘c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files… ‘Access is denied.’ 的解决办法 1.添加用户"Network Service” 和 “IIS_IUSERS” 读下面目录的读写权限 a) C:\Windows\Temp b) C:\Windows\Microsoft.NET\Framewo

Magento 切换成中文后没有数据信息解决办法

一款基于Google Closure compiler压缩Js文件插件. 快捷键: Ctrl+Alt+M            当前文件内压缩Js代码(不推荐) Ctrl+Alt+Shift+M   压缩Js并生成压缩文件 *.min.js 安装成功重启,如果报错,在配置里改一个参数,"compiler": "uglify_js", { // the closure compiler adds new lines every 500 characters // fo

修改mysql字符编码出现Job failed to start解决办法

从网上找到如下资料: $sudo gedit /etc/mysql/my.cnf [client]下添加: default-character-set=utf8 [mysqld]下添加: default-character-set=utf8 然后保存退出 $ /etc/init.d/mysql restart 结果出现了: Since the script you are attempting to invoke has been converted to an Upstart job, you

Toast在关闭应用后还显示的解决办法

1.我们在用Toast的用法就是:Toast.makeText(Context,CharSequence , Duration).show().但有的时候如果你在一次操作当中多次点击一个view的时候去显示Toast,可能在你关闭 应用后Toast任然会继续显示,这个小瑕疵很是讨厌.下面就说一下解决办法(用到activity的生命周期): 就是在要用Toast的Activity中添加两个函数: 函数一: 1 // 对toast进行一个简单的封装 2 public void toastShow(C

tomcat关闭后线程依然运行解决办法

tomcat关闭后线程依然运行解决办法,设置线程为守护线程 守护线程与非守护线程 最近在看多线程的Timer章节,发现运用到了守护线程,感觉Java的基础知识还是需要补充. Java分为两种线程:用户线程和守护线程 所谓守护线程是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分.因 此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程.反过来说,只要任何非守护线程还在运行,程序就不会终止. 守

Eclipse修改java代码后自动重启Tomcat解决办法

今天甚是郁闷,项目马上要上线了,早上刚到公司打开MyEclipse 10.07提示过期提示,这对于用惯了破解软件的帝国用户的我原本以为小菜一碟. 于是到网上到处找破解软件,不用多长时间,Ok 破解成功.再一打开MyEclipse没什么异常,可到了部署项目时却发现总是出问题. 于是乎继续想办法破解,清理C盘和MyEclipse有关的文件,清注册表,重复重装,到最后也无果,卸载MyEclipse... 到网上下了个Eclipse,终于松了口气,决定再也不用My....可问题又来了,每次稍微修改jav

JQuery利用css()修改样式后 hover失效的解决办法

执行完代码后发现写在样式表中的hover效果失效,改了好几遍差点重新写函数,后来发现很简单,是优先级的问题,css()中的内容覆盖了之前的样式 只需要在样式后写!important即可解决! 1 .filters-wrap li:hover { 2 background:#0085d7 !important; 3 } 4 .filters-wrap li:hover span { 5 color:white !important; 6 }

linux RHEL6 中md0重启后变为 md127的解决办法

假如我们使用/dev/sdb1和/dev/sdc1两个分区建立了一个RAID1设备/dev/md0: # mdadm  --create  /dev/md0  --level=1  --raid-devices=2  /dev/sd[bc]1 # mkfs.ext4 /dev/md0 重启后,/dev/md0设备就会自动变为/dev/md127设备. 解决办法:修改配置文件/etc/mdadm.conf第二列的设备名为md0. # mdadm --detail --scan >> /etc/m