CentOS6で制限されているプロセス最大数を制限解除する - 256bitの殺人メニュー

[] CentOS6で制限されているプロセス最大数を制限解除する

ハマったのでメモ。

Linuxリソース制限するための仕組みのulimitがありますが、その1項目に「nproc」があります。

これはそのユーザで実行できるプロセススレッド)数の制限となります。

これが、CentOS5までは、

$ ulimit -u
unlimited

のように無制限だったのですが、CentOS6になって以下のように1024で制限がかかるようになりました。

$ ulimit -u
1024

そのため、デーモンとかで高負荷な処理をさせてプロセススレッド)が増えると処理が落ちてしまうのです。

悲しいけどこれってデフォルト値なのよね。


設定箇所は?

実際の設定は、[/etc/security/limits.d/90-nproc.conf]でされています。

# cat  /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

*          soft    nproc     1024

という事で変更

実際の設定は、[/etc/security/limits.d/90-nproc.conf]でされています。

# cat  /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

はい!消えた!

消えたよ!

[/etc/security/limits.conf]で変更しても上書きされるので注意!


一応制限したいなら

*    soft    nproc   32768
*    hard    nproc   32768

位しておくといいかも。

戦争終結です。

詳解 Linuxカーネル 第3版