Centos 7 でlimits.conf を変更すると ssh 接続が失敗する

問題の説明

プロジェクトのパフォーマンス テストには数百万の TCP 接続が必要なため、プログラムはエラーを報告します。

too many open files

情報を確認するとシステムパラメータの最大文件打开数 file-max制限であることが分かります
ので、オンライン情報に従って修正してください/etc/security/limits.conf

# 在文件末尾添加以下两行
*    soft    nofile    2000000
*    hard    nofile    2000000

サーバーを再起動した後、ssh 接続が確立できないことがわかり、データを調べたところ、 でlimits.conf設定されたオープン ファイルの最大数が、 で設定された/etc/sysctl.confオープン ファイルの最大数を超えていることがわかりました。

fs.file-max = 1000000
fs.nr_open = 1000000

解決

  1. 現在 ssh に接続できない場合は、
    Linux シングル プレーヤー モードに入り、limits.conf値を通常の範囲に変更する必要があります。詳細な手順については、参照リンクをクリックしてください。

  2. 現時点でまだ SSH 接続できる場合

    • 次の 2 つのパラメータを変更します/etc/sysctl.conf。値は実際のニーズに応じて設定されます。ここでは 300 万が必要です
        fs.file-max = 3000000
        fs.nr_open = 3000000
      
    • 変更/etc/security/limits.conf次の 2 つのパラメーターを最後に追加します。値は前の手順で設定した値より小さい必要があります。ここでは 200 万に設定します。
        *    soft    nofile    2000000
        *    hard    nofile    2000000
      

おすすめ

転載: blog.csdn.net/qq12547345/article/details/127729317