在阿里云买了个云服务器,内存1G。编译php时出现下面的错误:

virtual memory exhausted: Cannot allocate memory

问题原因:由于物理内存本身很小,且阿里云服务器并没有分配swap空间,当物理内存不够用时,

              物理内存中暂时不用的内容没地方转存。

解决方法:手动分配一个swap空间

             dd if=/dev/zero of=/swap bs=1024 count=1M    #创建一个大小为1G的文件/swap

             mkswap /swap                                                 #将/swap作为swap空间

             swapon /swap                                                  #enable /swap file  for paging and swapping

             echo "/swap swap swap sw 0 0" >> /etc/fstab    #Enable swap on boot, 开机后自动生效