1.命令簡(jiǎn)介
ulimit 屬 Shell 內(nèi)建命令,用于查看或設(shè)置 Shell 以及通過(guò) Shell 啟動(dòng)的進(jìn)程使用系統(tǒng)資源的上限。限制分為軟限制(當(dāng)前限制)和硬限制,其中硬限制是軟限制的上限值。如果應(yīng)用程序在運(yùn)行過(guò)程中使用的系統(tǒng)資源超過(guò)相應(yīng)的軟限制,將導(dǎo)致進(jìn)程的終止。
由于系統(tǒng)資源有限,比如開(kāi)啟文件描述符的數(shù)量,進(jìn)程堆棧的大小,CPU 時(shí)間,虛擬內(nèi)存大小,等等,操作系統(tǒng)對(duì)每一個(gè)進(jìn)程都有嚴(yán)格的限制。資源的合理限制和分配,不僅僅是保證系統(tǒng)可用性的必要條件,也與進(jìn)程性能密不可分。這時(shí),ulimit 可以起到很大的作用,它是一種簡(jiǎn)單并且有效的實(shí)現(xiàn)資源限制的方式。
2.命令格式
ulimit [-HSTabcdefilmnpqrstuvx [limit]]
其中,limit 是對(duì)指定類型資源的具體限制,參數(shù) S 表示設(shè)置軟限制,H 表示設(shè)置硬限制,當(dāng)都不指定時(shí),表示同時(shí)設(shè)置軟限制和硬限制。
3.選項(xiàng)說(shuō)明
-H 設(shè)定資源的硬限制,只有 root 用戶可以操作 -S 設(shè)置資源的軟限制 -a 顯示目前所有資源設(shè)定的限制 -b socket 緩沖的最大值,單位 -c core 文件的最大值,單位 blocks -d 進(jìn)程數(shù)據(jù)段的最大值,單位 KB -e 調(diào)度優(yōu)先級(jí)上限,這里的優(yōu)先級(jí)指 NICE 值。只針對(duì)普通用戶進(jìn)程有效 -f 當(dāng)前 Shell 可創(chuàng)建文件總大小的上限,單位 blocks -i 被掛起/阻塞的最大信號(hào)數(shù)量 -l 可以鎖住的物理內(nèi)存的最大值,單位 KB -m 可以使用的常駐內(nèi)存的最大值,單位 KB -n 每個(gè)進(jìn)程可以同時(shí)打開(kāi)的最大文件數(shù) -p 管道的最大值,單位 block,1 block = 512 bytes -q POSIX 消息隊(duì)列的最大值 -r 限制程序?qū)崟r(shí)優(yōu)先級(jí),只針對(duì)普通用戶進(jìn)程有效 -s 進(jìn)程棧最大值,單位 KB -t 最大 CPU 時(shí)間,單位 s -u 用戶最多可啟動(dòng)的進(jìn)程數(shù)目 -v 當(dāng)前 Shell 可使用的最大虛擬內(nèi)存,單位 KB -x 文件鎖的最大數(shù)量 -T 線程的最大數(shù)量
4.常用示例
(1)查看現(xiàn)有系統(tǒng)資源限制。
ulimit -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 255112 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 65536 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
(2)控制進(jìn)程發(fā)生段錯(cuò)誤(Segmentation Fault)時(shí)生成 coredump 文件。
ulimit -c unlimited
(3)設(shè)置進(jìn)程的棧大小沒(méi)有限制。
ulimit -s unlimited
原文標(biāo)題:每天一個(gè) Linux 命令(74):ulimit 命令
文章出處:【微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
Linux
+關(guān)注
關(guān)注
87文章
11353瀏覽量
210562 -
命令
+關(guān)注
關(guān)注
5文章
698瀏覽量
22138
原文標(biāo)題:每天一個(gè) Linux 命令(74):ulimit 命令
文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Linux實(shí)時(shí)查看日志的四種命令詳解
![<b class='flag-5'>Linux</b>實(shí)時(shí)查看日志的四種<b class='flag-5'>命令</b><b class='flag-5'>詳解</b>](https://file1.elecfans.com/web3/M00/05/B8/wKgZPGeEft6AfYW9AAAvPO3y9mw633.png)
詳解Linux sort命令之掌握排序技巧與實(shí)用案例
Linux grep命令詳解
盤(pán)點(diǎn)Linux系統(tǒng)中的常見(jiàn)命令
![盤(pán)點(diǎn)<b class='flag-5'>Linux</b>系統(tǒng)<b class='flag-5'>中</b>的常見(jiàn)<b class='flag-5'>命令</b>](https://file1.elecfans.com/web3/M00/00/D4/wKgZO2dOZdqAFQhEAAA91zFQXQ8462.png)
Linux系統(tǒng)中shell命令解析
Linux lsof命令的基本用法
![<b class='flag-5'>Linux</b> lsof<b class='flag-5'>命令</b>的基本用法](https://file1.elecfans.com/web1/M00/F3/7F/wKgaoWcYc2mAFw5cAAA4fI5XmGk856.png)
Linux系統(tǒng)中man命令的基本使用
![<b class='flag-5'>Linux</b>系統(tǒng)<b class='flag-5'>中</b>man<b class='flag-5'>命令</b>的基本使用](https://file1.elecfans.com/web2/M00/09/85/wKgaomb5CRSAFPh-AADKBDs3rCM086.jpg)
評(píng)論