製品の最良のパフォーマンスを得るため、ファイル・ハンドルの数をデフォルトの 1024 ハンドルよりも増やします。
このタスクについて
重要: Rational® 製品を使用して作業する前に、ファイル・ハンドルの数を増やしてください。ほとんどの Rational 製品は、プロセスごとにデフォルトの上限である 1024 個より多くのファイル・ハンドルを使用します。この変更はシステム管理者が行う必要があります。
以下のステップに従って Linux でファイ
ル記述子を増やす際には、慎重に実行してください。説明どおりに正しく行わない場合、コンピューターが正常に始動しない可能性があります。
手順
- root としてログインします。root のアクセス権限がない場合は、取得してから継続してください。
- etc ディレクトリーに移動する。
重要: 次のステップでファイル・ハンドルの数を増やす場合は、
コンピューター上に空の initscript ファイルを残さない でください。
残した場合、次回電源をオンにしたり再始動した場合に、コンピューターが始動しなくなります。
- vi エディターを使用して etc ディレクトリー内の initscript ファイルを編集する。この
ファイルがない場合は、vi initscript と入力して作成してください。
- 1 行目に ulimit -n 30000 と入力する。ここで重要なのは、30000 という値がほとんどの Linux コンピューターでのデフォルト値である 1024 よりもかなり大きいことです。
重要: システム全体のパフォーマンスに悪影響を及ぼす場合があるため、ハンドルの数にはあまり多すぎる値を設定しないでください。
- 2 行目に eval exec "$4" と入力する。
- ステップ 4 と 5 を完了したことを確認した後、ファイルを保存して
閉じる。
注: ステップには正しく従うようにしてください。この手順を正しく実行しない場合、コンピューターは始動しません。
- オプション: etc/security ディレクトリーにある limits.conf
ファイルを変更して、ユーザーまたはグループが使用できるハンドルの数を制限する。SUSE Linux Enterprise
Server (SLES) バージョン 9 と Red Hat Enterprise Linux バージョン 4.0 の両方で、このファイルがデフォルトで用意されています。
このファイルがない場合は、
前の手順のステップ 4 でもっと小さい数 (例えば 2048) を指定することを検討してください。このようにして、プロセスごとに開くことのできるファイル数について、ほとんどのユーザーに比較的低い上限を割り当てるようにしてください。
ステップ 4 で比較的低い数字を使用した場合は、ここで小さい数を指定することは
それほど重要ではありません。
ただし、ステップ 4 で大きい数を設定した場合は、limits.conf ファイルで上限を設定しなければ、コンピューターのパフォーマンスが大幅に低下する可能性があります。
すべてのユーザーを制限してから、後で異なる上限を設定する limits.conf ファイルの例を以下に示します。このサンプルでは、
前述のステップ 4 でハンドルを 8192 に設定したことを想定しています。
* soft nofile 1024
* hard nofile 2048
root soft nofile 4096
root hard nofile 8192
user1 soft nofile 2048
user1 hard nofile 2048
上のサンプルの
* は、
最初にすべてのユーザーの上限を設定するために使用されています。その上限は、
その後の上限よりも低くなっています。root ユーザーが開くことのできるハンドルの数は
これより大きく、user1 が使用できる数はその 2 つの間になります。変更を行う前に、limits.conf ファイルに
含まれる文書を必ず読んで理解しておいてください。
次のタスク
ulimit コマンドについて詳しくは、ulimit のマニュアル・ページを参照してください。