症状
ulimitの値を増やそうとしています。/etc/security/limits.conf
に以下を追加して、
oracle soft nofile 4096
oracle hard nofile 16384
再起動しました。しかし、ulimitコマンドの実行結果は以下のようになったままです。
$ ulimit -n
1024
$ ulimit -Hn
65536
原因
/etc/security/limits.d/
ディレクトリに、oracle-rdbms-server-12cR1-preinstall.conf
(12cR1の場合)などというファイルが存在します。これは、Oracle Databaseインストール前にoracle-rdbms-server-12cR1-preinstall
などの事前構成RPMパッケージをインストールした時に作成されたものです。
このファイルの中身に、以下のように書かれています。
# oracle-rdbms-server-12cR1-preinstall setting for nofile soft limit is 1024
oracle soft nofile 1024
# oracle-rdbms-server-12cR1-preinstall setting for nofile hard limit is 65536
oracle hard nofile 65536
oracleユーザがログインすると、limits.conf
に書いたほうではなく、上記の値のほうが有効になります。
対処
oracle-rdbms-server-12cR1-preinstall.conf
などのファイルのほうの値を変更しましょう。