How to increase ulimit on Gentoo

Linuxサーバーを運用していて「Too many open files」に悩まされることがある。

デーモンプロセスに対して ulimit を設定したい場合、Gentoo では /etc/conf.d/ の設定ファイルに rc_ulimit を追加するだけで簡単に設定できる。

例えば Redmine のデーモンに対して最大オープンファイル数を 65535 に設定する場合:

# /etc/conf.d/redmine
rc_ulimit="-n 65535"
rc_need="nginx"

確認

/proc/[pid]/limits で確認すると、rc_ulimit="-n 65535" が設定されている場合は “Max open files” が 65535/65535 になる。

コメントアウトするとデフォルトの 1024/4096 に戻る。

便利。