limits.conf文件工作原理

时间:2021-08-21 04:45:34

1、 limits.conf 描述
  limits.conf文件实际是Linux PAM(插入式认证模块,Pluggable Authentication Modules)中 pam_limits.so 的配置文件,突破系统的默认限制,对系统访问资源有一定保护作用。 limits.conf 和sysctl.conf区别在于limits.conf是针对用户,而sysctl.conf是针对整个系统参数配置。

2、limits.conf工作原理
  limits.conf是 pam_limits.so的 配置文件,然后/etc/pam.d/下的应用程序调用pam_***.so模块。譬如说,当用户 访问服务器,服务程序将请求发送到PAM模块,PAM模块根据服务名称在/etc/pam.d目 录下选择一个对应的服务文件,然后根据服务文件的内容选择具体的PAM模块进行处理

  例如:限制admin用户登录到sshd的服务不能超 过2个
  在/etc/pam.d/sshd中添加:session required pam_limits.so
  在/etc/security/limits.conf中添加:admin - maxlogins 2
  注意:查看应用程序能否被PAM支持,用ldd
  同理limits.conf要使用就必须保证/etc/pam.d/login 中有下面:session required pam_limits.so

3、limits.conf文件格式:

  username|@groupname   type    resource    limit

1)username|@groupname
  设置需要被限制的用户名,组名前面加@和用户名区别。也可用通配符*来做所有用户的限制

2)type
  类型有soft,hard 和 -,其中soft 指的是当前系统生效的设置值。hard 表明系统中所能设定的最大值。soft 的限制不能比har 限制高。用 - 就表明同时设置了soft 和hard的值

3)resource: 表示要限制的资源

(1)core - 限制内核文件的大小
  何谓core文件,当一个程序崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。core文件是个二进制文件,需要用相应的工具来分析程序崩溃时的内存映像,系统默认core文件的大小为0,所以没有被创建。可以用ulimit命令查看和修改core文件的大小,例如:
  #ulimit –c
  0
  #ulimit -c 1000
  -c 指定修改core文件的大小,1000指定了core文件大小。也可以对core文件的大小不做限制,如: ulimit -c unlimited
  注意:如果想让修改永久生效,则需要修改配置文件,如 .bash_profile、/etc/profile或/etc/security/limits.conf

(2)date - 最大数据大小

(3)fsize - 最大文件大小

(4)memlock - 最大锁定内存地址空间

(5)nofile - 打开文件的最大数目
  对于需要做许多套接字连接并使它们处于打开状态的应用程序而言,最好通过使用ulimit -n,或者通过设置nofile参数,为用户把文件描述符的数量设置得比默认值高一些

(6)rss - 最大持久设置大小

(7)stack - 最大栈大小

(8)cpu - 以分钟为单位的最多 CPU 时间

(9)noproc - 进程的最大数目

(10)as - 地址空间限制

(11)maxlogins - 此用户允许登录的最大数目

  注意:要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。查看 /etc/pam.d/login 文件中有:session required /lib/security/pam_limits.so

4)limits.conf设置
  1)暂时生效,适用于通过 ulimit 命令登录 shell 会话期间
  2)永久生效,通过将一个相应的 ulimit 语句添加到由登录 shell 读取的文件之一(例如 ~/.profile),即特定于 shell 的用户资源文件;或者通过编辑 /etc/security/limits.conf

本文转载自:https://my.oschina.net/987openlab/blog/94634

[THE END]

limits.conf文件工作原理的更多相关文章

  1. 长连接锁服务优化实践 C10K问题 nodejs的内部构造 limits.conf文件修改 sysctl.conf文件修改

    小结: 1. 当文件句柄数目超过 10 之后,epoll 性能将优于 select 和 poll:当文件句柄数目达到 10K 的时候,epoll 已经超过 select 和 poll 两个数量级. 2 ...

  2. limits.conf文件修改注意事项

    limits.conf文件限制着用户可以使用的最大文件数,最大线程,最大内存等资源使用量. vim /etc/security/limits.conf * soft nofile * hard nof ...

  3. 源码解读Linux的limits.conf文件

    目录 目录 1 1. 前言 1 2. PAM 2 3. pam_limits 2 4. limits.conf的由来 3 5. 模块入口函数 4 6. 解析limits.conf 6 7. 生效lim ...

  4. /etc/security/limits.conf 文件说明

    /etc/security/limits.conf 是 Linux 资源使用配置文件,用来限制用户对系统资源的使用 语法:<domain>  <type>  <item& ...

  5. limits&period;conf文件修改注意事项&comma;限制文件描述符数和进程数

    参考文章: https://blog.csdn.net/fanren224/article/details/79971359 https://www.cnblogs.com/micmouse521/p ...

  6. 转载:&sol;etc&sol;security&sol;limits&period;conf 控制文件描述符&comma;进程数&comma;栈大小

    原文地址:http://ilikedo.iteye.com/blog/1554822 linux下安装Oracle 一般都会修改/etc/security/limits.conf这个文件,但是这里面的 ...

  7. &lbrack;转帖&rsqb;linux文件描述符文件&sol;etc&sol;security&sol;limits&period;conf

    linux文件描述符文件/etc/security/limits.conf https://blog.csdn.net/fanren224/article/details/79971359 需要多学习 ...

  8. &lbrack;转帖&rsqb;ulimit、limits&period;conf、sysctl和proc文件系统

    ulimit.limits.conf.sysctl和proc文件系统 来源:https://blog.csdn.net/weixin_33918114/article/details/86882372 ...

  9. &lbrack;转载&rsqb;&sol;etc&sol;security&sol;limits&period;conf解释及应用

    limits.conf的格式如下: username|@groupname type resource limit username|@groupname:设置需要被限制的用户名,组名前面加@和用户名 ...

随机推荐

  1. ArcSDE安装注意事项(二)

    上次安装的arcsde9.3后尝试往本机sde数据库中导入一个区局的数据库,但是每次都是导到一半就卡死不动,也没有报任何的错误,因此安装了arcsde9.3 sp2补丁,安装补丁后连接sde(非直连方 ...

  2. &lbrack;wikioi2144&rsqb;砝码称重2(另类的dfs)

    题目描述 Description 有n个砝码,现在要称一个质量为m的物体,请问最少需要挑出几个砝码来称? 注意一个砝码最多只能挑一次 输入描述 Input Description 第一行两个整数n和m ...

  3. 在apache上报错&OpenCurlyDoubleQuote;The &lowbar;imaging C module is not installed”

    我的环境是python2.7.8.django1.6.4.apache2.2. 问题:在django自带的runserver环境下没有任何报错,但是配置在apache上出现了 “The _imagin ...

  4. 使用SignalR和SQLTableDependency跟踪数据库中记录的变动

    原文地址:查看 SqlTableDependency是一个组件用来接收数据库的通知,包含在数据表上该记录的值的Inserted.Deleted或者Update操作. 备注:原文提供示例代码下载,但是j ...

  5. 【测试】这是用微软word发布的博客

    参考文章: http://blog.163.com/dsp163@126/blog/static/795585732011573383290/ 试试图片, 美女镇楼:    

  6. 逛csdn看见的一个知识阶梯,感觉不错

    逛csdn看见的一个知识阶梯,感觉不错: 计算机组成原理 →  DOS命令 → 汇编语言 → C语言(不包括C++).代码书写规范 → 数据结构.编译原理.操作系统 → 计算机网络.数据库原理.正则表 ...

  7. shell执行class或jar

    mc11>java -cp /home/ap/user/webproject/web.war/WEB-INF/lib/*:. com.userpackage.ExcelDemo 说明:/home ...

  8. java json与map互相转换(二)

      java json与map互相转换(二) CreationTime--2018年7月16日15点09分 Author:Marydon 1.准备工作 所需jar包: commons-beanutil ...

  9. Mac在终端用命令装载dmg文件

    今天碰到个问题,下载了一个dmg文件,然后双击/右键安装,一点反应都没有.一开始以为是电脑的缘故,重启,依旧没有反应,然后想到用终端装载试试. 打开终端,输入命令: hdiutil attach we ...

  10. 信息安全铁人三项赛--资质赛writeup

    [博客目录] 工具 Burp Suite stegsolve.jar 十六进制编辑器 赛题 第一题 第二题 第三题 第四题 第五题 第六题 1- 工具: 1.1- Burp Suite 一款可以进行再 ...