ulimit -n修改之后不生效

下图open files值1024在正常的生产环境中是远远不够的,所以我们需要扩大这个值,可以使用ulimit -n 数值 来实现,但是这种修改方式重启服务器会失效,想要永久保存必须写进配置文件中,配置文件的路径为/etc/security/limits.conf,书写格式为:

  •   soft	nofile		30000
    
  •   hard	nofile		30000
    

其中30000就是我们需要更改的值
ulimit -n修改之后不生效_第1张图片
正常情况下改完配置文件保存退出,然后重新进入系统就会生效,今天我要讲的就是另外我遇到的不生效的事件

我修改配置文件不生效,使用ulimit -n命令临时修改后发现可以,但是一旦退出系统,重新登录之后发现open files值又恢复到了1024,到网上查看发现是因为我升级了openssh导致的问题,下面我就把配置方式写出来,方便大家解决问题:
首先我的openssh已经升级到了8.0
在这里插入图片描述
1.编译openssh的时候注意加上-with-pam模块
2.修改ssh配置文件/etc/ssh/sshd_config,加上UsePAM yes
此时ssh控制界面一定不能关闭,因为关闭了你就进不去linux系统了,或者你可以先打开telnet防止进不去系统
3.我们找到
openssh-8.0p1/contrib/redhat/sshd.pam这个文件,把它复制到
/etc/pam.d/sshd中,并编辑:

#%PAM-1.0
authrequired pam_sepermit.so
authinclude password-auth
account required pam_nologin.so
account include password-auth
password include password-auth

session required pam_selinux.so close
session required pam_loginuid.so

session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth

4.最后重启sshd,systemctl restart sshd
重新进入系统,发现open files已经更改了!

ulimit -n修改之后不生效_第2张图片

你可能感兴趣的:(ulimit -n修改之后不生效)