10

1.问题描述:

在linux服务器使用composer部署yii项目时,出现“proc_open(): fork failed - Cannot allocate memory
报错内容

也就是提示“提示内存不足”,我们可以通过创建swap分区解决这个问题。

2.解决方法:

  • 先运行 free -m 看下空间是多少
  • 在命令行环境依次运行以下三条命令
dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
mkswap /var/swap.1
swapon /var/swap.1
  • 举例:[以下是我在服务器运行的结果]
dd if=/dev/zero of=/var/swap.1 bs=1M count=1024   //第一条指令
1024+0 records in    //这个是返回的内容
1024+0 records out   //这个是返回的内容
1073741824 bytes (1.1 GB) copied, 10.0607 s, 107 MB/s    //这个是返回的内容
mkswap /var/swap.1   //第二条指令
Setting up swapspace version 1, size = 1048572 KiB   //这个是返回的内容
no label, UUID=f6280c41-21b4-4039-bc3e-c26284b47b0c   //这个是返回的内容
swapon /var/swap.1  //第三条指令
swapon: /var/swap.1: insecure permissions 0644, 0600 suggested.   //这个是返回的内容
  • 解释:
dd 从/dev/zero设备复制出一个1G大小的文件/var/swap.1

mkswap 格式化/var/swap.1

swapon 将swap分区挂在到文件系统

然后输入free -m 查看内存使用量信息
  • 最后再次执行composer update就成功了

参考的博客有:http://www.zfsphp.com/31.html


willeny
144 声望3 粉丝