ulimit命令

ulimit用于控制系统内执行资源的限制,如coredump文件大小、文件的最大值、能打开的最大文件数等。

执行ulimit -a可以看到当前的资源限制情况。

[root@localhost ~]# ulimit -a

core file size (blocks, -c) 0 #core文件的最大值为0,即不生成core dump。

data seg size (kbytes, -d) unlimited #进程的数据段可以任意大。

scheduling priority (-e) 0

file size (blocks, -f) unlimited #文件可以任意大。

pending signals (-i) 98304 #最多有98304个待处理的信号。

max locked memory (kbytes, -l) 32 #一个任务锁住的物理内存的最大值为32KB。

max memory size (kbytes, -m) unlimited #一个任务的常驻物理内存的最大值。

open files (-n) 1024 #一个任务最多可以同时打开1024的文件。

pipe size (512 bytes, -p) 8 #管道的最大空间为4096字节。

POSIX message queues (bytes, -q) 819200 #POSIX的消息队列的最大值为819200字节。

real-time priority (-r) 0

stack size (kbytes, -s) 10240 #进程的栈的最大值为10240字节。

cpu time (seconds, -t) unlimited #进程使用的CPU时间。

max user processes (-u) 98304 #当前用户同时打开的进程(包括线程)的最大个数为98304。

virtual memory (kbytes, -v) unlimited #没有限制进程的最大地址空间。

file locks (-x) unlimited #所能锁住的文件的最大个数没有限制。

设置系统限制的方法

一、在initscript下设置(使用sysvinit)

sysvinit介绍

​ sysvinit是一种init系统,源于system V的Unix系统,负责linux系统的初始化,一直以来被大部分Linux系统所使用。

/etc/inittab

sysvinit会读取/etc/inittab文件内的内容,获取以下几种信息:

系统需要进入默认的 runlevel

捕获组合键的定义

定义电源 fail/restore 脚本

启动 getty 和虚拟控制台

/etc/initscript

当系统存在initscript文件时,init会使用该文件来运行inittab内的命令。因此可以在该文件内设置ulimit,通常用来为全部进程设置ulimit及umask的值。

以下是init使用initscript执行inittab内的命令。

/bin/sh /etc/initscript

以下是一个设置了ulimit的initscript例子:

# Set umask to safe level, and enable core dumps.

umask 022

ulimit -c 2097151

PATH=/bin:/sbin:/usr/bin:/usr/sbin

export PATH

# Increase the hard file descriptor limit for all processes

# to 8192. The soft limit is still 1024, but any unprivileged

# process can increase its soft limit up to the hard limit

# with "ulimit -Sn xxx" (needs a 2.2.13 or later Linux kernel).

ulimit -Hn 8192

# Execute the program.

eval exec "$4"

二、在/etc/security/limits.conf设置

将需要限制的资源写进/etc/security/limits.conf,语法格式为:

root hard core ulimited

limits.conf是pam_limits.so的配置文件,必须在pam.d目录下的对应程序的配置文件内reqiure这个库文件才可以生效。

#在登录时限制

vi /etc/pam.d/login

# Sets up user limits according to /etc/security/limits.conf

# (Replaces the use of /etc/limits in old login)

session required pam_limits.so

要在用户登录进行限制,最后还需要在sshd的配置文件内配置使用PAM:

vi /etc/ssh/sshd_config

usePAM yes

三、在/etc/profile 或者用户bashrc下设置

针对不同的用户进行不同的限制,也可以将ulimit指令写入bashrc文件内。

# vi /root/.bashrc

ulimit -c unlimited

故障排查

当发现ulimit没有生效,可以从以上三个地方检查是否有配置错误。

initscript是sysvinit特有的文件,如果使用systemd或者upstart,通过initscript配置将会失效。

参考:man limits.conf(5) man initscript(5) man inittab(5) man pam.conf

ulimit限制 新系统_系统限制ulimit学习相关推荐

  1. 自适应学习系统_如何建立适应性学习系统

    自适应学习系统 Have you ever started a course, but thought it was too slow? Or too difficult? Wish you coul ...

  2. 0xc0000225无法进系统_系统重装|电脑无法开机蓝屏错误代码0xc0000225故障问题

    在重装系统的过程中,因为电脑机型,操作等因素,可能会导致重装系统出现一些问题.有的用户重装系统后发现电脑无法开机,显示蓝屏错误代码0xc0000225.为什么会出现这种情况呢?应该如何解决?下面就让小 ...

  3. 发布会签到系统_系统开发_创建项目及应用

    此发布会签到系统是我跟着虫师的<Web接口开发与自动化测试>做的项目. 此项目基于django框架,使用到了python.HTML语言并涉及到非常多的技术. 做的过程中,有些地方让我做的有 ...

  4. 计算机主板系统安装系统安装系统,重装系统_系统重装_电脑重装系统【步骤|图文教程】-太平洋IT百科手机版...

    如何重装系统?重装系统教程 电脑在使用长了以后就免不了会发生一些问题,如电脑感染顽固病毒木马,杀毒软件查杀不了,安装系统时间长了硬盘里的碎片越来越多,运行的速度越来越慢,出现系统瘫痪不能使用,经常死机 ...

  5. 信号与系统_系统频率响应

    时域和频域是分析系统的激励响应关系的两大路径,时域看起来更直观,频域分析起来更方便,某种程度上更能描述系统性质的本质. 对于一个系统的单位冲激响应h(t),对它进行傅立叶变换,得到H(ω),这个函数就 ...

  6. java r日历系统_系统日历 插入重复事件规则 (android/java)

    Recurrence Rule 重复规则 rrule(Recurrence Rule) 属于 icalendar 属性中的一个,配合 dtstart 可以完整描述一个事件的重复行为并计算出重复事件的具 ...

  7. ulimit限制 新系统_说来惭愧,我被ulimit摔了一跤...

    limit 命令详解 语法 **参数**: 参数详解 小结下 limit 配置过程中容易跳的坑 说来惭愧,我被ulimit摔了一跤... 自接触 linux 后,大家所受的教育就是 ulimit是最便 ...

  8. 联想小娜怎么开启_联想小新Air 14win10系统的微软小娜如何开启

    联想小新Air 14win10系统的微软小娜如何开启 win10系统中的小娜可以跟用户进行聊天交流,还可以用它进行搜索,今天就跟大家介绍一下联想小新Air 14win10系统的微软小娜如何开启的具体操 ...

  9. 新代系统反向间隙参数_新代SYNTECCNC系统维修

    无论是配备水平主轴还是轴旋转头单元,加工中心都是真正的全能型生产商,为任何加工任务提供通用解决方案.我们不仅可以恢复机器的性能,还可以将生产率提高,通过控制升级和众多改装选项和软件更新,您的机器性能将 ...

最新文章

  1. 光棍节程序员闯关秀(总共10关)
  2. mysql load data on duplicate_带有ON DUPLICATE KEY UPDATE的MySQL LOAD DATA INFILE
  3. 腾讯视频会议使用测试
  4. 【Obj-C】学习杂记-1
  5. 超赞的“数据与算法之美”资料分享!
  6. python 获取li的内容_Python开发案例:爬取四川省统计局数据Matplotlib绘图
  7. 【今日CS 视觉论文速览】Thu, 13 Dec 2018
  8. Linux shell中比较操作符“==”与“-eq”对比
  9. 190216每日一句
  10. paip.提升用户体验=----c++ qt 字体切换功能缺少的总结..
  11. Hazelcast IMDG参考中文版手册-第一章-前言
  12. oracle误删数据恢复方法
  13. 华为信息与网络技术学院2016-2017大学生ICT技能大赛圆满闭幕
  14. boot版本是什么 cent os_Cent OS 7系统目录结构
  15. 计算机桌面输入法怎么恢复,电脑输入法图标不见了怎么办 电脑输入法图标消失找回【图文】...
  16. Fbx File Format Identifier
  17. arcgis地图加载离线地图
  18. 基于JAVA成都某4S店销售管理系统计算机毕业设计源码+系统+lw文档+部署
  19. rman如何直接备份到异地硬盘,磁带机和磁带库
  20. VMware虚拟机安装Windows2008详细过程

热门文章

  1. ajax等待进度数,如果ajax少于X秒,如何延迟显示进度?
  2. python输出指定范围素数_怎么用python输出指定范围内的质数?
  3. excel取整函数_Excel中的这些烧脑问题,你遇到过几种?
  4. java rabbitmq 工具类_RabbitMq通用管理工具类
  5. 大数据实训记录(二)
  6. 攻防世界-crypto-OldDriver(RSA低加密指数广播攻击) 方法总结
  7. CTF-web-xff,referer 知识点;
  8. Python 的6个日期时间库
  9. mysql链表_MySql链表语句--博客园老牛大讲堂
  10. 无线呼叫服务器对码设置,楼层呼叫器对码方式种类