Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1126443
  • 博文数量: 241
  • 博客积分: 4385
  • 博客等级: 上校
  • 技术积分: 2383
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-07 23:13
文章分类

全部博文(241)

文章存档

2013年(1)

2012年(8)

2011年(62)

2010年(109)

2009年(61)

分类: LINUX

2011-03-23 13:13:10

原文链接 http://zhaohang3031.blog.163.com/blog/static/17840245200902211446525/

问题:
在用 mysqlhotcopy 备份数据库时,提示 /dev/shm 设备空间不足!


理论理解:
    在红帽企业版Linux的应用程序如果遵循POSIX或者使用GLIBC(2.2和更高版本),通常使用/dev/shm作共享内存(shm_open,shm_unlink)。/dev/shm是一个临时文件系统(tmpfs),可以从/etc/fstab中mount。因此,支持标准的参数例如"size",可以用来增加或者减少在/dev/shm上的tmpfs大小.(默认的,它的大小是系统RAM的一半)。

linux下/dev/shm是什么?
  默认系统就会加载/dev/shm ,share memory,它就是所谓的tmpfs。象虚拟磁盘一样,tmpfs 可以使用您的 RAM,但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备,并需要一个 mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了。

tmpfs有以下优势:
1、动态文件系统的大小。
2、tmpfs 的另一个主要的好处是它闪电般的速度。因为典型的 tmpfs 文件系统会完全驻留在 RAM 中,读写几乎可以是瞬间的。
3、tmpfs 数据在重新启动之后不会保留,因为虚拟内存本质上就是易失的。所以有必要做一些脚本做诸如加载,绑定的操作。

 

解决方法:
例如:为了将/dev/shm的大小增加到1GB,修改/etc/fstab的这行:默认的: 
none     /dev/shm       tmpfs   defaults        0 0
改成: 
none     /dev/shm       tmpfs   defaults,size=1024m        0 0

size参数也可以用G作单位:size=1G。

重新mount /dev/shm使之生效:
# mount -o remount /dev/shm

或者:
# umount /dev/shm
# mount -a

马上可以用"df -h"命令检查变化。

阅读(3232) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~