ulimit 命令详解

| 选择喜欢的代码风格  

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

ulimit 命令安装:


-bash/zsh: ulimit command not found

#Debian
apt-get install bash

#Ubuntu
apt-get install bash

#Alpine
apk add bash

#Arch Linux
pacman -S bash

#Kali Linux
apt-get install bash

#CentOS
yum install bash

#Fedora
dnf install bash

#OS X
brew install bash

#Raspbian
apt-get install bash

#Docker
docker run cmd.cat/ulimit ulimit

ulimit 命令补充说明:


ulimit 为 Shell 内建指令,可用来控制 Shell 执行程序的资源。

ulimit 命令语法:


ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]
ulimit [-aHS][-c <core文件上限>][-d <数据节区大小>][-f <文件大小>][-m <内存大小>][-n <文件数目>][-p <缓冲区大小>][-s <堆叠大小>][-t <CPU时间>][-u <程序数目>][-v <虚拟内存大小>]

ulimit 命令选项:


-a  显示目前资源限制的设定。
-c  设定core文件的最大值,单位为区块。
-d <数据节区大小>  程序数据节区的最大值,单位为KB。
-f <文件大小>  shell所能建立的最大文件,单位为区块。
-H  设定资源的硬性限制,也就是管理员所设下的限制。
-m <内存大小>  指定可使用内存的上限,单位为KB。
-n <文件数目>  指定同一时间最多可开启的文件数。
-p <缓冲区大小>  指定管道缓冲区的大小,单位512字节。
-s <堆叠大小>  指定堆叠的上限,单位为KB。
-S  设定资源的弹性限制。
-t  指定CPU使用时间的上限,单位为秒。
-u <程序数目>  用户最多可开启的程序数目。
-v <虚拟内存大小>  指定可使用的虚拟内存上限,单位为KB。

ulimit 命令实例:


ulimit 获取所有用户限制的属性:

ulimit -a

ulimit 获取同时打开的文件数的硬限制:

ulimit -H -n

ulimit 获取同时打开的文件数的软限制:

ulimit -S -n

ulimit 设置每个用户的最大进程限制:

ulimit -u 30

ulimit 命令其他相关:


修改 /etc/sysctl.conf

vi /etc/sysctl.conf

--------------------------
fs.file-max = 32768
kernel.msgmni = 1024
kernel.sem = 1000 32000 32 512
kernel.shmmax = 2147483648
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_max_syn_backlog = 4096
--------------------------

让配置立即生效
sysctl -p

修改 /etc/security/limits.conf

vi /etc/security/limits.conf

# 确认包含下面的内容:


* soft nofile 8192
* hard nofile 8192

修改后,用 ulimit -Hn 和 ulimit -Sn 确认修改已生效

使用命令 ulimit -HSn 65536 可以立即生效。

ulimit 命令扩展阅读:




ulimit 命令评论

共收录到 491Linux 命令