编译时:virtual memory exhausted: Cannot allocate memory(转)

一、问题

当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法。

二、解决方法

在执行free -m的是时候提示Cannot allocate memory:

(swap文件可以放在自己喜欢的位置如/var/swap)

 1 [[email protected] byrd]# free -m
 2              total       used       free     shared    buffers     cached
 3 Mem:           512        108        403          0          0         28
 4 -/+ buffers/cache:         79        432
 5 Swap:            0          0          0
 6 [[email protected] ~]# mkdir /opt/images/
 7 [[email protected] ~]# rm -rf /opt/images/swap
 8 [[email protected] ~]# dd if=/dev/zero of=/opt/images/swap bs=1024 count=2048000
 9 2048000+0 records in
10 2048000+0 records out
11 2097152000 bytes (2.1 GB) copied, 82.7509 s, 25.3 MB/s
12 [[email protected] ~]# mkswap /opt/images/swap
13 mkswap: /opt/images/swap: warning: don‘t erase bootbits sectors
14         on whole disk. Use -f to force.
15 Setting up swapspace version 1, size = 2047996 KiB
16 no label, UUID=59daeabb-d0c5-46b6-bf52-465e6b05eb0b
17 [[email protected] mnt]# swapon /opt/images/swap
18 [[email protected] mnt]# free -m
19              total       used       free     shared    buffers     cached
20 Mem:           488        481          7          0          6        417
21 -/+ buffers/cache:         57        431
22 Swap:          999          0        999  

内存太小,增加内存可以解决。

使用完毕后可以关掉swap:

[[email protected] mnt]# swapoff swap
[[email protected] mnt]# rm -f /opt/images/swap 

swap文件也可以不删除,留着以后使用,关键是你的虚拟机硬盘够用。

时间: 2024-10-29 10:47:45

编译时:virtual memory exhausted: Cannot allocate memory(转)的相关文章

编译安装php时遇到virtual memory exhausted: Cannot allocate memory

有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作.本人近期就遇到一个这样的问题:在512MB内存centos操作系统的VPS上编译安装某国内主机控制面板,在编译安装php时日志中有如下错误记录:virtual memory exhausted: Cannot allocate memorymake: *** [ext/fileinfo/libmag

编译时:virtual memory exhausted: Cannot allocate memory

一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法. 二.解决方法 在执行free -m的是时候提示Cannot allocate memory: (swap文件可以放在自己喜欢的位置如/var/swap) [html] view plain copy [[email protected] byrd]# free -m total   

编译时:virtual memory exhausted: Cannot allocate memory,常见于VPS

原文链接:http://blog.csdn.net/taiyang1987912/article/details/41695895 一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序可能会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法解决. 二.解决方法 在执行free -m的时候提示Cannot allocate memory: (swap文件可以放在自己喜欢的位置如/var/sw

php编译 :virtual memory exhausted: Cannot allocate memory

有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作.本人近期就遇到一个这样的问题:在512MB内存centos操作系统的VPS上编译安装某国内主机控制面板,在编译安装php时日志中有如下错误记录:virtual memory exhausted: Cannot allocate memorymake: *** [ext/fileinfo/libmag

virtual memory exhausted: Cannot allocate memory 解决方法

在阿里云买了个云服务器,内存1G.编译kudu时出现下面的错误: virtual memory exhausted: Cannot allocate memory 问题原因:由于物理内存本身很小,且阿里云服务器并没有分配swap空间,当物理内存不够用时, 物理内存中暂时不用的内容没地方转存. 解决方法:手动分配一个swap空间 dd if=/dev/zero of=/swap bs=1024 count=1M    #创建一个大小为1G的文件/swap             mkswap /s

virtual memory exhausted: Cannot allocate memory

问题描述: 购买的Linux服务器,Linux服务器的内存为512MB. 在编译PHP的时候会提示:virtual memory exhausted: Cannot allocate memory,编译失败. 解决方法: 发生该问题的原因是服务器的内存不够,从而导致编译失败. 而购买的Linux服务器,未给你分配虚拟内存,所以可以通过自行增加虚拟内存的方法予以解决 [[email protected] ~]# free -m total used free shared buffers cach

虚拟机无法分配内存 virtual memory exhausted: Cannot allocate memory

1.内存交换空间(swap)的构建 安装Linux时一定需要的两个分区:根目录和swap(内存交换空间). swap的功能:在应付物理内存不足的情况下所造成的内存扩展记录的功能. 物理内存不足的时候,swap使用硬盘来暂时放置内存中的信息. 设置一个swap分区 创建一个虚拟内存的文件 1.1 使用物理分区构建swap 针对没有建立swap分区的情况,基本用不到.在已建立swap分区情况下,直接跳到第二部分(创建虚拟内存文件). 分区先用fdisk在磁盘中分个区出来作为swap.然后设置一下sy

Centos安装php提示virtual memory exhausted: Cannot allocate memory

由于内存不够,需要在php配置的时候./configure最后添加上 --disable-fileinfo >>./configure --prefix= ...........   --disable-fileinfo >> make >> .....

解决:virtual memory exhausted: Cannot allocate memor

问题描述: 购买的Linux服务器,Linux服务器的内存为512MB. 在编译PHP的时候会提示:virtual memory exhausted: Cannot allocate memory,编译失败. 解决方法: 发生该问题的原因是服务器的内存不够,从而导致编译失败. 而购买的Linux服务器,未给你分配虚拟内存,所以可以通过自行增加虚拟内存的方法予以解决: 1 2 3 4 dd if = / dev / zero of = / swap bs = 1024 count = 1M mks