首页 > 系统相关 >linux修改limits.conf不生效

linux修改limits.conf不生效

时间:2022-10-21 09:45:09浏览次数:73  
标签:limits linux nofile etc conf nproc 204800

正常情况下, /etc/security/limits.conf 的改动,重新登录就可以生效, 我遇到的问题最后的解决方案是重启虚拟机解决了,也参考了很多网上的文章,整理记录一下

一、修改方法

1.临时方法

为了优化linux性能,可能需要修改这个最大值。临时修改的话ulimit -n 204800就可以了,重启后失效。

2.永久生效方法

(1)、修改/etc/security/limits.conf文件 在文件末尾添加如下内容,然后重启服务器或重新登录即可生效。重启后用查看命令进行查看,如果显示数字等于204800即证明修改成功。如果不成功请继续往下看。
  • 查看命令:(-n是可以打开最大文件描述符的数量。 -u是用户最大可用的进程数。)
ulimit -n
ulimit -u
  • 修改配置命令:vim /etc/security/limits.conf 如下
* soft nofile 204800
* hard nofile 204800
* soft nproc 204800
* hard nproc 204800

我在解决这个问题时候,发现网上都是说修改这一个文件就行,但是我修改后重启服务器发现没更改过来。
后来发现,还需要修改两个文件。如果你重启后也没生效,请继续跟着往下修改。

在修改下面(2)、(3)所示的这些文件时候,有些文件可能并不存在,或者90-nproc.conf没有,但是有20-nproc.conf,建议从根路径下,自己亲自cd进去。然后一步步找到目标文件。如果90-nproc.conf不存在,修改类似的文件即可,即xx-nproc.conf

(2)、/etc/security/limits.d/90-nproc.conf文件尾添加
* soft nproc 204800
* hard nproc 204800
(3)、/etc/security/limits.d/def.conf文件尾添加
* soft nofile 204800
* hard nofile 204800

二、不生效原因及解决方案

  1. 确保 pam 生效
    在 /etc/pam.d/login 中,存在:
session required pam_limits.so
  1. 确保 ssh 使用 pam
    在 /etc/pam.d/sshd 中,存在:
session required pam_limits.so

在 /etc/ssh/sshd_config 中, 存在:

UsePAM yes
  1. limits.conf 建议不要使用星号
    官方 manual 以及网上的教程有很多都用了 * 符号,然而不是所有系统都认的,比如我在解决这个问题时候,发现ubuntu系统就不支持。最前面一列代表用户名即root和evan。

不兼容方式:

* soft nofile 204800
* hard nofild 204800

兼容方式

root soft nofile 204800
root hard nofile 204800
es soft nofile 204800
es hard nofile 204800

参考:

https://evanwang.blog.csdn.net/article/details/103706237?utm_term=/etc/security/limits修改不生效&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allsobaiduweb~default-0-103706237&spm=3001.4430
https://blog.csdn.net/xinqiku/article/details/103312021
https://support.huaweicloud.com/intl/zh-cn/trouble-ecs/ecs_trouble_0354.html

标签:limits,linux,nofile,etc,conf,nproc,204800
From: https://www.cnblogs.com/yuwen01/p/16812384.html

相关文章

  • Linux系统文件相关命令
    系统优化相关性能优化安全优化编码优化1)了解⾃⼰的系统情况cat/etc/redhat-releaseuname-r/-a/-n/-s/...#详⻅下图2)在系统中创建⽤户信息创建⽤户use......
  • Linux下定期清空被正在运行服务占用的日志文件
    linux下定期删除日志:运用linux下的whiletrue循环,加上echo"">***.log完成while:;do#echo"">nohup.out#ls"dir"-lR|grep-v^d|awk'{print$9}'|tr-s'......
  • Spring上传文件报错the request was rejected because its size (15920203) exceeds t
    背景今天在查异常日志的时候,发现了一条这样的报错therequestwasrejectedbecauseitssize(15920203)exceedstheconfiguredmaximum(10485760)详细堆栈如下:or......
  • Linux清理缓存
     echo1>/proc/sys/vm/drop_caches//1释放页缓存echo2> /proc/sys/vm/drop_caches//2释放dentries和inodes缓存echo3> /proc/sys/vm/drop_caches......
  • Linux不同发行版本的区别(以安装Linux版本QQ为例)
     安装:当前版本的QQLinux版依赖gtk2.0,安装QQLinux版前请确保你的系统已安装gtk2.0。以下是一些使用命令行安装gtk2.0的例子:sudoaptinstalllibgtk2.0-0#Ubuntusu......
  • Linux Crontab命令定时任务基本语法与操作教程
    一、Crontab查看编辑重启  1、查看crontab定时执行任务列表  crontab-l  2、编辑crontab定时执行任务  crontab-e  3、删除crontab......
  • Linux的三种网络连接方式
    Linux的三种网络连接方式1.桥接模式虚拟系统可以和外部系统通讯,但是容易造成IP冲突2.NAT模式网络地址转换模式,虚拟系统可以和外部通讯,不造成IP冲突3.主机模式独立的......
  • Linux进程的虚拟空间
    进程的虚拟地址Linux每一个运行的程序(进程)操作系统都会为其分配一个0~4G的地址空间(虚拟地址空间)。为了更深入的理解,做一个测试:#include<stdio.h>#include<stdlib.h......
  • Linux中的用户组管理命令
    1、概念每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定有所不同。用户组的管理涉及用户组的添加、删除和修改。......
  • Linux中的进程和服务
    1、概念计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。启动之后一直存在、常驻内存的进程,一般被称作“服务”(service)。2、systemctl(Centos7为例):syst......