Linux ulimit命令
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。
實例
顯示系統資源的設置
[root@xuhuhu.com ~]# 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@xuhuhu.com ~]#
設置單一用戶程式數目上限
[root@xuhuhu.com ~]# ulimit -u 500 //設置單一用戶程式上限 [root@xuhuhu.com ~]# 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@xuhuhu.com ~]#