RedHat系 のbind9で「warning: max open files (1024) is smaller than max sockets (4096)」

bindのゾーンファイルがまあまあ多くなってくると「warning: max open files (1024) is smaller than max sockets (4096)」こんなwarningがログに書かれてくる。

解消するには、max open filesを4096まで上げてやる必要がある。
/etc/security/limits.confに書いてやろうかと考えたが、shell経由でbindを実行しているわけではないのでここに書いても意味が無いかな。と思った次第。新しいやつだと、/etc/security/limits.dにそれらしきファイルがあったりするんだけど・・・

なので、ここは原始的に設定してやる。#RedHat系と書いたのは↓に記述する為

# vi /etc/sysconfig/named
ulimit -n 4096 #←一番下に追加

# /etc/init.d/named restart
# cat /proc/`pgrep named`/limits

Max open files 4096 4096 files

これでrebootしても問題無し。

#ただ、パッケージのアップデート等で/etc/sysconfig/namedが書き換わる事があるかもしれないので、注意。