GNU/Linux >> Linux の 問題 >  >> Linux

開いているファイルの制限を 4096 を超えて増やすことはできません (Ubuntu)

わかりました、私はついにこれを理解しました。 /etc/security/limits.conf で設定していた制限 適用されていましたが、グラフィカルログインには適用されていませんでした。これは、ターミナル ウィンドウから次のように確認できます。

$ ulimit -n
4096
$ su mkasberg
Password:
$ ulimit -n
65535

さらに調査を重ねた結果、このバグ レポートにたどり着き、正しい方向に進むことができました。ログイン シェルで使用される制限を変更するには、次の行を /etc/systemd/user.conf に追加する必要があります。 :

DefaultLimitNOFILE=65535

その変更は機能しますが、ソフト制限にのみ影響します。 (まだ 4096 のハード リミットが設定されたままです。) ハード リミットにも影響を与えるには、/etc/systemd/system.conf を変更する必要があります。 同じ変更で。

/etc/pam.d で行った変更 必要ありませんでした。少なくとも Ubuntu では、これは既に機能しています。また、root の設定を変更する必要はありませんでした。 および * limits.conf で。 mkasberg の制限を変更する 少なくとも私のユースケースでは十分でした.

まとめ

ulimit -n で示される制限を増やしたい場合 、次のことを行う必要があります:

  • /etc/systemd/user.conf を修正 と /etc/systemd/system.conf 次の行を追加します (これにより、グラフィカル ログインが処理されます):

    DefaultLimitNOFILE=65535
    
  • /etc/security/limits.conf を変更 次の行を追加します (これにより、非 GUI ログインが処理されます):

    mkasberg hard nofile 65535
    mkasberg soft nofile 65535
    
  • 変更を有効にするためにコンピュータを再起動してください。


/etc/security/limits.conf を変更する必要はありません systemd を使用している場合は無視されます。

(ネットワーク上の別の質問に対する修正された回答を再現しています...)

デフォルトの /etc/systemd/system.conf を編集したくない人のための代替手段 と /etc/systemd/user/conf ファイル:

<オール>
  • 新しいファイル /etc/systemd/system.conf.d/limits.conf を作成します これらの内容:

    [Manager]
    DefaultLimitNOFILE=65535
    
  • systemctl daemon-reexec を実行 ルートとして

  • ログアウトして再度ログイン

  • ulimit -n で新しい制限を確認してください .

  • systemd-system.conf を参照してください 詳細はマンページをご覧ください。


    TL;DRI は、答えを見つけやすくするために、答えを集中させる必要があると感じました。正しく機能するようにすべてのピースをまとめるのに何年もかかりました ...

    考慮すべき場所が 2 つあります。

    <オール>
  • GUI セッション

    $ grep DefaultLimitNOFILE /etc/systemd/system.conf
    DefaultLimitNOFILE=65535
    

    またはそれ以上:

    $ grep NOFILE /etc/systemd/system.conf.d/limits.conf
    DefaultLimitNOFILE=65535
    
  • シェル環境

    $ grep nofile /etc/security/limits.conf
    user soft nofile 65535
    user hard nofile 65535`
    

    またはそれ以上:

    $ grep nofile /etc/security/limits.d/user.conf
    user soft nofile 65535
    user hard nofile 65535
    
  • 上記のファイルの設定を変更した後、再起動します ulimit -n -Hn -Sn で制限を確認します。


  • Linux
    1. Ubuntu – Linuxで.bakファイルを開く方法は?

    2. Ubuntu 17.10でシステム設定を開くことができませんか?

    3. UbuntuLinuxでスワップサイズを増やす方法

    1. Ubuntuでオープンファイルの制限を増やす方法は?

    2. libaio.so.1:共有オブジェクト ファイルを開けません

    3. Ubuntu での Prolog プログラミング

    1. ImportError:libcblas.so.3:共有オブジェクト ファイルを開けません:そのようなファイルまたはディレクトリはありません

    2. Linux で許可されているオープン ファイルの最大数

    3. nginx uLimit 'worker_connections が開いているファイルのリソース制限を超えています:1024'