ulimit
OSリソースの制限を行う。(設定を確認する。)
■よく使う形(例)
※プロセスに割り当てられるリソースの上限値(制限)を表示する。
# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
max
nice
(-e) 0
file size (blocks, -f) unlimited
pending
signals
(-i) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open
files
(-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) unlimited
max rt 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
※ユーザーが利用できる最大プロセス数を1024に制限する。
# ulimit -u 1024
max user processes (-u) 1024
|
|
ulimitコマンドは、ユーザープロセスに対してのリソース利用制限を設定させることができます。
OSのデフォルトではあまり制限されているものではありませんが、「多くのユーザーがログインする」とか、「大規模なBINDを運営する」といったときなど、リソース制限を的確に設定する必要が生じます。
なお、ulimitコマンドはBシェル系で使うコマンドです。 Cシェルではlimitコマンドを使いますが、使い方はほも同じです。
|
■主なオプション
| オプション |
機能説明 |
-a
|
全項目を表示する
|
| -c |
作成できるコアファイルのサイズ(ブロック)上限
|
| -d
|
プロセスのデータセグメントのサイズ |
-f
|
1つのファイルの大きさ(ブロック)上限値
|
-l
|
プロセスが mlock()関数を使用して、プロセスをメモリにロックできる最大サイズ
|
-m
|
プロセスが使用できるメモリ使用量(KB) |
-n
|
ユーザがオープンできるファイルの上限数
|
-p
|
パイプのサイズ
|
-s
|
自動的に拡張されるスタックのサイズ(KB)の上限値 |
-t
|
プロセスが CPU を使うことのできる時間(秒)の上限値 |
-u
|
同時に実行可能なプロセス数の上限数 |
-v
|
仮想メモリのサイズ
|
-x
|
作成可能なファイルロックの数 |
※その他、オプションは多数ありますが、専門のコマンドリファレンスやmanコマンド等でご確認下さい。
|