Linux ulimit命令(控制shell執行程序的資源)

Linux 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。

實例

顯示系統資源的設置

[[email protected] ~]# 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
[[email protected] ~]# 

設置單一用戶程序數目上限

[[email protected] ~]# ulimit -u 500 //設置單一用戶程序上限
[[email protected] ~]# 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
[[email protected] ~]# 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章