【linux命令】[原创]阿里云ECS编译php 报错:virtual memory exhausted: Cannot allocate memory cc: Internal error: Kil

内容摘要
典型报错特征:

virtual memory exhausted: Cannot allocate memory

cc: Internal error: Killed (program cc1)


用阿里云的这个linux centos 6.5测试机512M内存服务
文章正文

典型报错特征:
virtual memory exhausted: Cannot allocate memory
cc: Internal error: Killed (program cc1)


用阿里云的这个linux centos 6.5测试机512M内存服务器,编译php一顿报错,看了提示应该是内存不够。解决办法当前我自己总结了有三个,分享一下,肯定还有其他方法,这里就不说明了。

解决方法:
1,如果是服务器本身内存比较大的情况下,说明服务器内存确实用了很多,可以将一些占用内存比较多的服务停止掉后重新编译测试。
2,服务器本身内存消耗比较多或服务器配置内存比较小的情况下,还可以考虑升级硬件或设置虚拟内存方法。 当前测试用的这阿里云服务器是512M内存的,下边针对如何设置swap说明下:

fdisk -l    //查看服务器加的磁盘情况,比如我们要swap设置到/dev/xvda  
mkdir /opt/temp/   //建立swap挂载目录
dd if=/dev/xvda  of=/opt/temp/swap bs=1024 count=2048000 // 从/dev/xvda分配2G内存
swapon /opt/temp/swap


重新看下free -m 看下内存。我们可以看到有2G虚拟内存了。重新编译测试。
3,如上边方法还不可以,最后这个方法肯定没问题了,编译的时候加上参数–disable-fileinfo 重新编译,搞定。

代码注释
[!--zhushi--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!