14

制限付きサーバーを 5000 並列接続用の iperf サーバーとして誤って使用しました。(制限は 1024 プロセスです) ログインするたびに、次のように表示されます。

-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: Resource temporarily unavailable

次に、それらを殺そうとしますが、ps を実行すると、次のようになります。

-bash-4.1$ ps
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: Resource temporarily unavailable

killall や同様のことを行うと、同じことが起こります。システムを再起動しようとしましたが、これも再起動後に得られるものです。

-bash-4.1$ sudo reboot
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: Resource temporarily unavailable
-bash-4.1$ 

なので基本的に何もできません。すべてのコマンドでこのエラーが発生します:/ ただし、「終了」することはできます。

これは私が物理的にアクセスできないオフサイト サーバーであるため、物理的にオフ/オンにすることはできません。

この問題を解決する方法はありますか? 助けていただければ幸いです。

4

2 に答える 2

22

ログインできる場合は、execすべてのコマンドを実行するために を使用してみてください。実行後exec、再度ログインする必要がありますexec。これは、(実行したコマンドに置き換えて) シェルを強制終了するためです。

exec実行中のシェルを実行するプログラムに置き換えるため、余分なプロセススロットを占有しません。ulimitしたがって、制限をバイパスできるはずです。

于 2014-02-28T20:21:54.560 に答える
5

私は最近同じ問題を抱えていました。私の場合、その理由は、私の所有権の下で実行され、ほとんどすべてのリソースを消費し、コマンドに何も残していないコードがあったためです。これが私が行ったことです。「exec top」で最大のリソースを消費している PID を特定し、「exec kill -9」で上記のコマンドで特定された PID を殺します。

PID を強制終了した後、すべてが正常に戻り、ログインし直すことができました。

于 2014-09-25T16:44:06.503 に答える