ファイルディスクリプタの設定

投稿者: | 2013年8月28日

Linuxでは、ユーザーアカウントごとに、ファイルディスクリプタの使用数に制限がかけてある。例えばCentOS6では、file openとmax user porcessesの値が1024に制限されている。

DBサーバーなどで大量にアクセスがあると、ファイルディスクリプタの制限に引っかかって新規の新規のプロセスやスレッドが生成出来ないという事態に陥ってしまう可能性があるので、下記のような手順でファイルディスクリプタの制限を調整する。

下記の設定例は、CentOS6でしたものです、ほかのOSでも似たような方法で設定ができるはずです。

# vi /etc/security/limit.conf
* soft nofile 4096

4096以上の数値を設定したい場合には、下記のように設定をする必要があるみたいです。

# vi /etc/security/limit.conf
* soft nofile 4096
* hard nofile 4096

CentOS5では、limits.confですべての設定をしたようですが、CentOS6では、プロセス数の制限は下記のファイルで行うようです。

# vi /etc/security/limits.d/90-nproc.conf
* soft nproc 4096

以上の手順で、アカウントごとのファイルディスクリプタとプロセス数の制限を緩和できるはずです。設定を反映されるためには、確かプロセスの再起動が必要だったかな?

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください