2010年1月25日

rhelで1ユーザあたりのプロセス数制限はできますか?

直接的な制限はPIDの個数になり、40億以上のプロセスが同時に実行可能です。
実際的にはメモリ使用量が問題になり、たとえば1つのプロセスで4MB消費すると
仮定すると128GB搭載でも32768個のプロセスが同時に実行可能です。

個別のユーザへのlimitについては、ulimitという仕組みにより可能です。
ulimitはシェルの組み込みコマンドで
ulimit -H -u 100

のような指定をすることで、そのユーザが同時に動作させることができる
プロセスの数を制限できます。(この例では100個に制限しています)

この設定をログイン時に強制したい場合は、
/etc/security/limits.conf ファイルに設定を記述します。
同時にopenできるファイルの数の制限を変更する例が以下のknowledge base
エントリで紹介されています。
http://kbase.redhat.com/faq/docs/DOC-2062

上記例の中で nofile(number of file)となって
いるものを nproc (number of process) に置換し、適切な
数を指定することで、一人のユーザあたりのプロセス数を制限することができま
す。


この時に利用されるのは pam_limits とよばれるPAMのモジュールです。
記述方法の詳細については man limits.conf をごらんください。

3週間ほどGoogle Homeを使ったまとめ 小技編

サードパーティアプリの強制終了は「キャンセル」 サードパーティアプリそのものは玉石混交でまあどんどん変わっていくと思うので詳細には触れない。音声対話をしているときにサードパーティアプリが想定しているコマンドがわからなくなると「すみません、もう一回言ってください」「最後のコマン...