虚拟机无法分配内存 virtual memory exhausted: Cannot allocate memory
1.内存交换空间(swap)的构建
安装Linux时一定需要的两个分区:根目录和swap(内存交换空间)。
swap的功能:在应付物理内存不足的情况下所造成的内存扩展记录的功能。
物理内存不足的时候,swap使用硬盘来暂时放置内存中的信息。
- 设置一个swap分区
- 创建一个虚拟内存的文件
1.1 使用物理分区构建swap
针对没有建立swap分区的情况,基本用不到。在已建立swap分区情况下,直接跳到第二部分(创建虚拟内存文件)。
- 分区
先用fdisk在磁盘中分个区出来作为swap。然后设置一下system ID(Linux的fdisk会默认将分区ID设为Linux的文件系统)。 - 格式化
利用“mkswap 设备文件名”新建swap格式分区(格式化该分区为swap格式)。 - 使用
“swapon 设备文件名”将此swap设备启动。 - 查看
“free”查看内存使用情况。
1.2 使用文件构建swap
- 使用dd命令在/tmp下新增一个128MB的文件
sudo -s #进入root用户模式
dd if=/dev/zero of=/swap bs=1024 count=1M #创建一个大小为1G的文件/swap
ll -h /swap #可以看到已为/swap分配了1G - 使用mkswap将/tmp/swap文件格式化为swap的文件格式
mkswap /swap
- 使用swapon将/tmp/swap启动
free #查看
swapon /swap #启动/swap
free #查看
swapon -s #查看
echo "/swap/swap swap swap defaults 0 0" >> /etc/fstab #设置成永久生效虽然现在已经生效,但是等下次虚拟机重启之后,该swap虚拟磁盘会失效。所以要加上最后一步。
虚拟机重启后若仍想使用,用root权限打开/swap即可使用。
sudo -s
swapon /swap
- 使用swapoff关闭swap file
swapoff /swap
free
虚拟机无法分配内存 virtual memory exhausted: Cannot allocate memory的更多相关文章
- 编译时:virtual memory exhausted: Cannot allocate memory
一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩 ...
- 编译时:virtual memory exhausted: Cannot allocate memory,常见于VPS
原文链接:http://blog.csdn.net/taiyang1987912/article/details/41695895 一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编 ...
- virtual memory exhausted: Cannot allocate memory 解决方法
在阿里云买了个云服务器,内存1G.编译kudu时出现下面的错误: virtual memory exhausted: Cannot allocate memory 问题原因:由于物理内存本身很小,且阿 ...
- 编译时:virtual memory exhausted: Cannot allocate memory(转)
一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩 ...
- 阿里云ECS云服务器编译安装PHP遇到virtual memory exhausted: Cannot allocate memory
阿里云编译安装php时遇到virtual memory exhausted: Cannot allocate memory 买了个服务器, 1G 的内存阿里云服务器,编译东西按说应该够了,安装相关的内 ...
- php编译 :virtual memory exhausted: Cannot allocate memory
有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作. ...
- 编译安装php时遇到virtual memory exhausted: Cannot allocate memory
有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的godaddy VPS来说,很有可能会出现问题,因为编译过程是一个内存 ...
- 树莓派编译程序时报错:virtual memory exhausted: Cannot allocate memory
一.原因分析: 树莓派内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法. 二.解决方法: 安 ...
- win7 mount到Linux下无法分配内存的问题(Cannot allocate memory)
如题,我在win7系统下共享目录,mount到linux下,进行编译或者某些操作,出现Cannot allocate memory提示. 修改以下两个键值,然后重启server服务,可以解决这个问题: ...
随机推荐
- 学习selendroid初衷
为了解决工作中的一个问题,开始学习selendroid. 工作中,有一些所谓H5应用需要测试,这些应用程序描述如下: 通过微信平台传播,也就是依靠微信的朋友圈传播: 可以通过类似于http://XXX ...
- codeforces776D
传送门 这题的意思就是原本有一个长度为n的01串,再给出m的长度为n的01串,要求你判定是否可以通过原串与m个串中的某些串xor使得原串到达一个状态.n,m小于1e5. 这题最初我发现不可做,因为这貌 ...
- html body div height: 100%;
最近做了测试 html{ height: 100%;//全部内容高度,包括滚动出现的内容 background-color:#000;} body{height: 100%;//只一页屏幕,用作滚动的 ...
- MySQL登陆及配置
一.mysql用户登录 mysql –u用户名 [–h主机名或者IP地址] –p密码 说明:用户名是你登录的用 户,主机名或者IP地址为可选项,如果是本地连接则不需要,远程连接需要填写,密码是对应用户 ...
- sublime 设置像IDE一样的 ctrl+鼠标左键 跳转到定义方法
鼠标点击菜单栏的Preferences,选择Browse Packages ,进入文件加之后,选择User 点击进入User,在User里面添加文件名为 Default (Windows).subli ...
- tomcat+mysql+javaweb+docker
1.安装好docker 2.docker pull tomcat docker pull mysql 3.docker run -it -p 8080:8080 --rm tomcat:7.0 #-i ...
- sql语句之数据类型
整形类型:该类型没必要指定显示宽度,使用默认的就ok. 类型 大小 TINYINT 1字节 SMALLINT 2字节 MEDIUMINT 3字节 INT或INTEGER 4字节(后面加的宽度不是存储宽 ...
- PHP实现人脸识别技术
这次人脸识别技术,是实现在微信端的,也就是说利用公众微信平台,调用第三的API来实现人脸识别这项技术的. 实现的思路: 首先呢,将收集的照片,建立一个照片库,然后利用在微信平台发送的照片,去到照片库进 ...
- html上传多图并预览
涉及知识:base64处理图片,ajax,js,thinkphp 效果图: 代码实现: html: <!DOCTYPE html> <html> <head> &l ...
- TP5之上传多张图片
1.效果图(每点击一次‘添加选项’,就会有一个新的 file 框来添加新的图片) 2.view <!--不要忘了引入jquery文件--> <!-- post传值方式和文件传输协议一 ...