8
5

More than 3 years have passed since last update.

【備忘録】Cloud9で「proc_open(): fork failed - Cannot allocate memory」が出たときの対処法

Last updated at Posted at 2020-02-01

※超絶初心者の為、誤りがございましたらコメントを頂けると大変助かります。

Laravelの新しいプロジェクトを作成しようとしたら、
proc_open(): fork failed - Cannot allocate memory
というエラーが出た。
「Cannot allocate memory」は日本語で「メモリを割り当てることができない」であり、
それを頭に入れつつググると、「PHPに割り当てられているメモリの値が足りない」ということがわかった。
そして、php.iniを編集して、メモリを増やさなければならないこともわかった。
参照記載の3つのサイトを参考にしながら、メモリを128M→512Mへ増やしたので、備忘録として残しておく。


※2020年2月2日追記

下記の手順A通り処理し、メモリを広げたが、結果、プロジェクト新規作成時のエラーを消すことができなかった。
Composerのトラブルシューティングに他の手段の記載があったので、
その手順Bを追記しておく。
こちらの手順でエラーは消えた。

手順B

ターミナルに下記1~3のコマンドを入力。
1. sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
2. sudo /sbin/mkswap /var/swap.1
3. sudo /sbin/swapon /var/swap.1
すると、Laravelで新規プロジェクト作成時のエラーは消えた!

参照B

トラブルシューティング-Composer



※2020年2月1日作成

手順A(結果的にこの手順では解決できなかったが、残しておく)

  1. ターミナルにsudo -s vi /etc/php.iniと入力し、Enter押下
  2. memory_limit = 128Mを探し出す。※128MはPHPのメモリ初期設定らしい
  3. 128を削除(消したい数字「1」,「2」,「8」をDeleteキーで削除)
  4. Insertキーを押した後,「5」,「1」,「2」を入力
  5. このままだと、ターミナル左下が-- INSERT --と表示されっぱなしで保存できないため、Escキーを何回か押下して、表示が無くなるようにする。
  6. :wqと入力し、Enterを押下すると、保存されて元のターミナルに戻る
  7. php -r 'phpinfo();' | grep memory_limitでメモリが増えているか確認

※ちなみに、php.iniをターミナル上で
・何も編集していない状態で閉じるには、:qコマンド
・編集したが、保存せずに閉じるには、:q!コマンド
 で対応可能。

参照A

Cloud9でlaravel開発環境の構築
Composerでメモリエラーが発生したときの対処方法【詳細解説】
すぐわかる!viの保存と終了の方法【Linux基礎知識】

8
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5