워크박스

proc_open(): fork failed - Cannot allocate memory 본문

PHP/문제해결(트러블슈팅)

proc_open(): fork failed - Cannot allocate memory

오픈빌더 2020. 9. 2. 21:00

컴포저(composer)나 심포니(symfony)를 사용해서 패키지를 설치할경우에 proc_open() fork failed을 보여주게 된다면 메모리 부족일 경우입니다.

이 경우에는 VPS나 클라우드에서 Swap 가능한 공간이 없기 때문에 발생할 수 있습니다.
free -m 명령어로 Swap 공간이 설정되어 있는지 확인해보도록 합니다.

free 명령어를 사용해서 Swap(용량)이 설정되어 있는지 확인합니다.

# free -m
              total        used        free      shared  buff/cache   available
Mem:            985         193         524          18         266         630
Swap:             0           0           0

Swap(용량)을 사용 할 수 있도록 가능하게 하는 예제 입니다:

가상메모리의 용량은 실메모리의 1~2배정도로 count로 조정해줄수 있습니다.

$ sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=2048
$ sudo /sbin/mkswap /var/swap.1
$ sudo /sbin/swapon /var/swap.1

$ sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=2048
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 9.046 s, 237 MB/s

$ sudo /sbin/mkswap /var/swap.1
mkswap: /var/swap.1: insecure permissions 0644, 0600 suggested.
Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
no label, UUID=26dee0cc-1353-4588-ae5e-885fae1c8d0e

$ sudo /sbin/swapon /var/swap.1
swapon: /var/swap.1: insecure permissions 0644, 0600 suggested.


Comments