ulimitコマンド(システムリソースの上限を設定する)【UNIX限定】
形式
ulimit [-H][-S][-a][-c][-d][-f][-l][-m] [-n][-p][-s][-t][limit]
機能
システムリソースの上限の設定および情報を標準出力に出力します。指定されたオプションに従って,システムリソースの上限値を設定し,出力します。
出力するリソース上限の出力形式を次の表に示します。
出力形式 |
内容 |
---|---|
time(cpu-seconds) 上限値 |
CPU時間の上限 |
file(blocks) 上限値 |
ファイルサイズの上限 |
coredump(blocks) 上限値 |
コアダンプのファイルサイズの上限 |
data(kbytes) 上限値 |
データ領域サイズの上限 |
stack(kbytes) 上限値 |
スタック領域サイズの上限 |
lockedmem(kbytes) 上限値 |
ロックされる物理メモリのメモリサイズの上限 |
memory(kbytes) 上限値 |
使用される物理メモリのメモリサイズの上限 |
nofiles(descriptors) 上限値 |
ファイルディスクリプタ数の上限 |
processes 上限値 |
プロセス数の上限 |
引数
リソースを示すオプションを複数同時に指定した場合は,あとに指定したオプションが有効になります。
- -H
-
ハードリミットを設定または出力します。-Hと-Sオプションを同時に指定した場合は,あとに指定したオプションが有効になります。
- -S
-
ソフトリミットを設定または出力します。-Hと-Sオプションを同時に指定した場合は,あとに指定したオプションが有効になります。
- -a
-
すべてのリソースの上限値を出力します。
- -c
-
コアダンプのファイルサイズ上限をblock単位で設定または出力します。
- -d
-
データ領域サイズの上限をKB単位で設定または出力します。
- -f
-
シェルまたはシェルから起動したプロセスが書き込むファイルの,ファイルサイズの上限をblock単位で設定または出力します。
- -l【Linux限定】
-
ロックされる物理メモリのメモリサイズの上限をKB単位で設定または出力します。
- -m【AIX,HP-UX,Linux限定】
-
使用される物理メモリのメモリサイズの上限をKB単位で設定または出力します。
- -n
-
オープンされたファイルディスクリプタ数の上限を設定または出力します。
- -p【Linux限定】
-
ユーザー1人が起動できるプロセス数の上限を設定または出力します。
- -s
-
スタック領域サイズの上限をKB単位で設定または出力します。
- -t
-
CPU時間の上限を秒単位で設定または出力します。
- limit
-
変更するリソースの上限値を指定します。unlimitedを指定すると,上限なしで設定します。上限値には任意の数値を指定できますが,実際に有効となる上限値の仕様については,使用しているOSのマニュアルを参照してください。
終了コード
終了コード |
意味 |
---|---|
0 |
正常終了 |
1 |
エラー終了 |
注意事項
-
このコマンドは次のどちらかに該当する場合,サポートしていないことを示すメッセージKNAX6710-Iを出力し,終了コード0を返して常に正常終了します。
-
OSがサポートしていないオプションを指定した。
-
Windows環境で実行した。
-
-
この正規組み込みコマンドは,コマンドの構文を誤ってもコマンドを実行しているシェルは終了しません。
-
adshexecコマンドはジョブ定義スクリプトの実行時に実行に必要なファイルを生成するため,ulimitコマンドで指定するファイルサイズの上限値が小さいと,SIGXFSZシグナルを受信する場合があります。
-
ハードリミットを増加させる場合は,管理者権限が必要です。
-
設定できるリソースの上限は実行環境やOSごとに異なります。
-
変更するリソースによっては,設定できない値を指定すると,実行環境やOSによって異なる値が設定される場合があります。
使用例
-
すべてのリソースの上限値を出力します。
ジョブ定義スクリプトの内容
ulimit -a
実行ジョブのSTDOUTファイルの内容
******** JOB SCOPE STDOUT ******** time(cpu-seconds) unlimited file(blocks) unlimited coredump(blocks) 0 data(kbytes) unlimited stack(kbytes) 10240 lockedmem(kbytes) 32 memory(kbytes) unlimited nofiles(descriptors) 1024 processes 4096