ulimit 命令

ulimit 命令用于控制 shell 程序的资源。

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

语法

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


选项

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

实例

显示系统资源的设置

[root@devfz ~]# ulimit -a

core file size     (blocks, -c) 0

data seg size      (kbytes, -d) unlimited

file size        (blocks, -f) unlimited

pending signals         (-i) 1024

max locked memory    (kbytes, -l) 32

max memory size     (kbytes, -m) unlimited

open files           (-n) 1024

pipe size      (512 bytes, -p) 8

POSIX message queues   (bytes, -q) 819200

stack size       (kbytes, -s) 10240

cpu time        (seconds, -t) unlimited

max user processes       (-u) 4096

virtual memory     (kbytes, -v) unlimited

file locks           (-x) unlimited

[root@devfz ~]#


设置单一用户程序数目上限

[root@devfz ~]# ulimit -u 500 //设置单一用户程序上限

[root@devfz ~]# ulimit -a

core file size     (blocks, -c) 0

data seg size      (kbytes, -d) unlimited

file size        (blocks, -f) unlimited

pending signals         (-i) 1024

max locked memory    (kbytes, -l) 32

max memory size     (kbytes, -m) unlimited

open files           (-n) 1024

pipe size      (512 bytes, -p) 8

POSIX message queues   (bytes, -q) 819200

stack size       (kbytes, -s) 10240

cpu time        (seconds, -t) unlimited

max user processes       (-u) 500

virtual memory     (kbytes, -v) unlimited

file locks           (-x) unlimited

[root@devfz ~]#





返回软件开发辅助网 | 常用命令列表

shell语法手册