web-dev-qa-db-ja.com

limits.confが適用されていません。

/etc/security/limits.confには次の行があります

*           soft        nofile          32768
*           hard        nofile          65536
root        soft        nofile          32768
root        hard        nofile          65536

以下の各ファイルには、pam_limits.soファイルが必要です。

/etc/pam.d/common-session
/etc/pam.d/cron
/etc/pam.d/login
/etc/pam.d/sshd
/etc/pam.d/su
/etc/pam.d/Sudo

ログイン時(および起動時に開始されるサービス)のulimit -nには、1024がまだ表示されます。

何が欠けていますか?

7
diolemo

Init.dのサービスの場合、/ etc/security/limits.dを使用できません。inittabがそのファイルを読み取っていないため、初期化起動スクリプトで使用されていないpam.dに基づいています。すべてのinit起動スクリプトは/etc/init.d/functionsをソースとするため、すべてのサービスでそのスクリプトをハックして制限を設定できます。私は{httpd、some brokenass Oracle stuf} e.t.cが必要になったときに、特定のサービスのために/ etc/sysconfigをハッキングするのが常でした。お役に立てれば。

3
Danila Ladner

Ubuntu 14.04

Pamがrtprio(-r)とmemlock(-l)の設定を認識できるように、/ etc/security/limits.confに「ハード」と「ソフト」の両方のエントリを追加する必要がありました。

2
Hawkeye

/etc/security/limits.d/に他の構成ファイルがないことを確認しましたか?

ulimitで増やしてみましたか?

$ ulimit -n 4096
$ ulimit -n
4096

保存後、再度ログインする必要があります。シェルを開始するだけでは不十分で、ログインシェルでなければなりません。

1
estani

Rootの場合、以下のコマンドを実行します

 ulimit -SHn 65535

特に特定のユーザーに対して永続的に設定する場合は、ファイル/etc/security/limits.confを次の行に変更します(ユーザー= www-dataと想定)。

例えば。

 www-data hard nofile 65535

 www-data soft nofile 65535

また、/ etc/pam.dの下のさまざまなファイルからpam_limits.soのコメントを外してください。 sudo、login、sshd、...すでに行った上記の手順を実行した後。

最後にシステムを再起動します

/var/log/auth.logを確認してください

そこで問題に対する答えを見つけました。私の場合、デフォルト値(1024)が使用される原因となるエラーのために制限が設定されていません。

0
Czarek