[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:60008] Re: LIMIT の上限値の変更


森岡です.

ちょっと遅くなりましたが, どなたもリプライしないみたいなので.

In article <199910300357.BJD18729.BHNJFL _at_ mikage.to>
mikage _at_ mikage.to writes:

>>    一方で、これ以外にプロセスごとにオープンできるファイルの最大数が
>>    存在します。残念なことに、これはそう簡単には変更できません。この
>>    最大値はデフォルトでは 1024 に設定されており、これを変更するため
>>    には /usr/src/linux/include/linux にある limits.h と fs.h を書き
>>    変える必要があります。NR_OPEN の定義を変更してカーネルを再コンパ
>>    イルしてください。
>>     
>>     と記述されています.
>>     しかし,実験してみたところ,上記の NR_OPEN を変更しなくても,
>>     file-max を十分大きくしてから,ulimit -n 8192 などとすれば,
>>     多くのファイルが open できるようになるように見えます.

JF が旧いというわけではなくて, 元の英語の proc.txt も同じです.
私も実験してみましたが, 実際には file-max で多くのファイルが
open 出来ました. そこで fs.h を調べてみると,

#define NR_OPEN (1024*1024)     /* Absolute upper limit on fd num */
#define INR_OPEN 1024           /* Initial setting for nfile rlimits */

と定義されています. つまり proc.txt の内容が旧いという事です.

>>     2つめは,デフォルトの file descriptor の最大値の
>>     変更方法です.
>>     root で,ulimit -n 8192 とすれば増えるのですが,
>>     root でなければ増やすことができません.

ユーザ毎の初期値は /etc/limits で設定します.  man limits して下さい.
このファイルが読まれるのは login 時の事なので,
デーモンに対して最大値を設定するには, /sbin/initscript 中で
ulimit を実行する必要があります. man initscript で説明が出ます.

#しかしながら, apache の 1 プロセス中で 1024 個以上のファイル
#をオープンする必要が本当にあるのでしょうか?

**************************************************
* 森岡和才 - メールアドレスにエイリアス付けました*
* Kazutoshi Morioka <k-morioka _at_ pop07.odn.ne.jp>  *
* 福岡県遠賀郡 http://k-pup.zoma.co.jp/~morioka/ *
**************************************************

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: