Linux下ulimit具体使用方法

ulimit 是一个计算机命令,用于shell启动进程所占用的资源,可用于修改系统资源限制,本篇文章重点为大家分享一下Linux下ulimit具体使用方法,有需要的小伙伴可以参考一下。

查看ulimit

命令格式:

ulimit [-SHacdefilmnpqrstuvx]
参数S:表示软限制,当超过限制值会报警
参数H:表示硬限制,必定不能超过限制值
参数a:将列出所有资源限制,如:

干货:ulimit命令详解干货:ulimit命令详解

参数c:当某些程序发生错误时,系统可能会将该程序在内存中的信息写成文件(除错用),这种文件就被称为核心文件(core file)。此为限制每个核心文件的最大容量
参数d:每个进程数据段的最大值
参数f:当前shell可创建的最大文件容量
参数l:可以锁定的物理内存的最大值
参数m:可以使用的常驻内存的最大值
参数n:每个进程可以同时打开的最大文件句柄数
参数p:管道的最大值
参数s:堆栈的最大值
参数t:每个进程可以使用CPU的最大时间
参数u:每个用户运行的最大进程并发数
参数v:当前shell可使用的最大虚拟内存

修改ulimit

命令格式:

ulimit [-SHcdefilmnpqrstuvx] [limit]

在查看的命令后面加上限制值,就可以调整某一项限制,但只对当前登录shell有效。

参数S表示设置软限制;参数H表示设置硬限制;当都不指定时,表示设置软限制和硬限制均为指定值。

永久修改ulimit

所谓永久,是指每次登陆shell时,都会按配置重新设定ulimit,以达到永久生效的效果。

步骤一:

修改/etc/security/limits.conf

添加如下内容:

关于该文件的配置方式请参考后文

[root@CentOS646506 ~]# vim /etc/security/limits.conf
* hard nproc 64000
* soft nproc 64000
* hard nofile 64000
* soft nofile 64000

以上内容表示,将-u和-n的软限制和硬限制同时修改为64000。

步骤二:

修改/etc/pam.d/login

添加如下内容:

[root@CentOS646506 ~]# vim /etc/pam.d/login
session required pam_limits.so

以上内容表示,在登录时使用pam管理limit。

步骤三:

修改/etc/profile

添加如下内容

[root@CentOS646506 ~]# vim /etc/profile
ulimit -u 64000
ulimit -n 64000

每次登陆shell后,会初始执行这两条ulimit命令,并使其生效。

使配置生效

重新登录或使用source /etc/profile立即生效。

source使当前shell对指定文件内容生效。

/etc/security/limits.conf配置详解

格式:

domain 是指生效实体
用户名
也可以通过@group指定用户组
使用*表示默认值
type指限制类型
soft软限制
hard硬限制
item限制资源
core同ulimit -c
data同ulimit -d
fsize同ulimit -f
memloc同ulimit -l
nofile同ulimit -n
stack同ulimit -s
cpu 同ulimit -t
nproc同ulimit -u
maxlogins指定用户可以同时登陆的数量
maxsyslogins系统可以同时登陆的用户数
priority用户进程运行的优先级
locks用户可以锁定的文件最大值
sigpengding同ulimit -i
msgqueue同ulimit -q

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/11384.html

(0)
晴川运维晴川运维
上一篇 2025年7月3日
下一篇 2025年7月3日

相关推荐

  • CoreOS具体安装方法

    CoreOS是一个基于Linux 内核的轻量级操作系统,为了计算机集群的基础设施建设而生,专注于自动化,轻松部署,安全,可靠,规模化,CoreOS作为Docker生态圈中的重要一员…

    Linux系统 2025年10月27日
  • Linux grep命令详解:查找文件内容

    很多时候,我们并不需要列出文件的全部内容,而是从文件中找到包含指定信息的那些行,要实现这个目的,可以使用 grep 命令。 grep 命令作为 Linux 文本处理三剑客的一员,另…

    Linux系统 2025年10月11日
  • Linux终端中实现大小写字符转换

    Linux终端中提供了一些可以大小写之间转换文本的命令,通过这些命令可以提高我们的工作效率,本篇文章重点为大家讲解一下Linux终端中进行大小写字符转换具体方法。 环境 Cento…

    Linux系统 2025年6月11日
  • Java随机数的坑你踩过吗

    随机数我们应该不陌生,业务中我们用它来生成验证码,或者对重复性要求不高的id,甚至我们还用它在年会上搞抽奖。今天我们来探讨一下这个东西。如果使用不当会引发一系列问题。 随机数我们应…

    Linux系统 2025年10月5日
  • 详解Linux下字符串的操作方法

    本篇文章为大家讲解一下Linux下对字符串的操作方法, 有需要的小伙伴可以参考一下。 字符串截取 定义字符串 $ str=www.baidu.com 匹配字符串截取 # …

    Linux系统 2025年6月15日
  • 快速上手Elasticsearch

    Elasticsearch是一个开源的分布式、RESTful 风格的搜索和数据分析引擎,它的底层是开源库Apache Lucene。 Lucene 可以说是当下最先进、高性能、全功…

    Linux系统 2025年6月18日
  • 详解Linux chkconfig 命令

    Linux chkconfig 命令用于检查,设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各…

    Linux系统 2025年9月20日
  • 简单介绍一下机器码与字节码

    什么是机器码 机器码(machine code),学名机器语言指令,有时也被称为原生码(Native Code),是电脑的CPU可直接解读的数据。 通常意义上来理解的话,机器码就是…

    Linux系统 2025年9月16日
  • 我最喜欢用的 5 个 Ansible 模块

    了解如何通过这些 Ansible 模块实现几乎任何事情。 在我成长的时候,我爷爷在他的花园里有一个棚子。他经常会花几个小时在那里制作和修复东西。这是在我们有互联网之前的事情,所以我…

    Linux系统 2025年9月23日
  • Linux下安装VMware Tools具体方法

    VMware Tools是VMware Workstation 虚拟机软件的增强工具包,是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机文件的驱动程序,本篇文章重点…

    Linux系统 2025年10月25日

发表回复

登录后才能评论