博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux的/dev/shm目录用于优化
阅读量:5797 次
发布时间:2019-06-18

本文共 1385 字,大约阅读时间需要 4 分钟。

hot3.png

我们日常操作中经常df –Th查看磁盘容量,那么/dev/shm的作用到底是什么?

 $ df -Th

文件系统      类型    容量  已用 可用 已用% 挂载点

/dev/sda2     ext3     57G   32G   23G  59% /

/dev/sda5     ext3    476G  341G  111G  76% /var

/dev/sda1     ext3    190M   29M  153M  16% /boot

/dev/sdb1     ext2    1.8T  1.2T  584G  67% /ext

tmpfs        tmpfs     20G  9.5G   11G  49% /dev/shm

/dev/shm在内存中,而不是在磁盘上。由于/dev/shm存在于内存中,所以速度肯定大大优于磁盘。

/dev/shm不是立即占用内存,而是采用需要才占用内存的方法。在上面的例子中,/dev/shm设置的值是20G,我们看到已用写入了9.5G的数据,也就是占用了9.5G的内存。

 

/dev/shm采用tmpfs文件系统,它具有以下优点

1.       速度飞快。

2.       动态分配:写入更多的数据,/dev/shm占用更多的内存;删除/dev/shm中的数据,那么就减少占用内存。不用这样利于内存的充分使用。

 

/dev/shm另一个特点:系统重启后、重新挂载/dev/shm后,/dev/shm中的数据都会消失。

 

/dev/shm默认值是内存的一半,有时根据需要会增大/dev/shm,如oracle中设置memory_target中的值超过了/dev/shm的大小。

 

修改/dev/shm大小:

1.Vim /etc/fstab

原来是这样:

tmpfs                   /dev/shm                tmpfs   defaults        0 0

修改成如下,也就是20G

tmpfs            /dev/shm                tmpfs   defaults,size=20000M        0 0

2.重新mount /dev/shm后生效

# mount -o remount /dev/shm

或者umount /dev/shm

mount /dev/shm

通过df –Th查看是否生效

 

也可以用下面的方式

# mkdir /mnt/tmp

# mount -t tmpfs -o size=256m,mode=1777 tmpfs /mnt/tmp

 

 

问题解决:

有时会遇到/dev/shm 卸载不掉的情况

# umount /dev/shm

umount: /dev/shm: device is busy.

 

用fuser处理

# fuser -km /dev/shm

# umount /dev/shm

# mount /dev/shm

 

fuser命令

-k:kill processes accessing the named file(杀死所有正在访问指定文件的进程

)

-m 表示指定文件所在的文件系统或者块设备(处于 mount 状态)。所有访问该文件系统的进程都被列出。

首先在/dev/shm建个tmp文件夹,然后与实际/tmp绑定

  #mkdir /dev/shm/tmp

  #chmod 1777 /dev/shm/tmp

  #mount -–bind /dev/shm/tmp /tmp

转载于:https://my.oschina.net/u/232595/blog/478609

你可能感兴趣的文章
HDU1576 A/B【扩展欧几里得算法】
查看>>
廖雪峰javascript教程学习记录
查看>>
WebApi系列~目录
查看>>
限制CheckBoxList控件只能单选
查看>>
Java访问文件夹中文件的递归遍历代码Demo
查看>>
项目笔记:测试类的编写
查看>>
用关系型NoSQL回到未来
查看>>
如何迅速分析出系统CPU的瓶颈在哪里?
查看>>
通过容器编排和服务网格来改进Java微服务的可测性
查看>>
re:Invent解读:没想到你是这样的AWS
查看>>
当我们谈网络时,我们谈些什么(5)链路层概述
查看>>
PyTips 0x02 - Python 中的函数式编程
查看>>
阿里云安全肖力:安全基础建设是企业数字化转型的基石 ...
查看>>
使用《Deep Image Prior》来做图像复原
查看>>
如何用纯 CSS 为母亲节创作一颗像素画风格的爱心
查看>>
Linux基础命令---rmdir
查看>>
阿里云胡晓明:未来将探索区块链在工业互联网领域的应用
查看>>
Java Memento Pattern(备忘录模式)
查看>>
优秀程序员共有的7种优秀编程习惯
查看>>
iOS sqlite3(数据库)
查看>>