Copy & Paste Engineer

【PHP】Warning: exec(): Unable to fork の対処

Warning: exec(): Unable to fork の対処

PHP で exec() 使用時に Warning: exec(): Unable to fork が発生することがあります。 その対処方法です。

原因

原因はいくつか理由があります。

対処方法

権限付与

例えば exec('rm -r hoge.txt') 実行時に hoge.txt を削除する権限がない場合に発生します。 そのため権限を変更して対応するが可能です。

また、指定のコマンドへのパスが通ってない可能性もありますので確認が必要です。

プロセス数上限(Linux)

以下のコマンドでプロセス数の上限を調べることが可能です。

ulimit -u

unlimited と表示されたら無制限です。

プロセス数の上限が設定されていたら今度は現在実行されているプロセス数を調べます。

以下のコマンドにてプロセスの確認が出来ます。

ps aux

指定したプロセス名だけ表示する

ps aux | grep [プロセス名]

不要なプロセスを見つけたらプロセスを kill しましょう。

kill [プロセスID]

参考