博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浅析/dev/shm
阅读量:4677 次
发布时间:2019-06-09

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

一,/dev/shm 概念

/dev/shm 是一个tmpfs文件系统,临时文件系统,是基于内存的文件系统,也就是说/dev/shm中的文件是直接写入内存的,而不占用硬盘空间。 在Centos和Redhat下,/dev/shm目录是一个链接,指向/run/shm目录,在Ubuntu系统下tmpfs文件系统对应的是/run/shm目录,可以使用df命令查看),因为 /dev/shm/这个目录不在硬盘上,而是在内存里,它就所谓的tmpfs。 在Redhat/CentOS等linux发行版中默认大小为物理内存的一半。最大可达到 物理内存+SWAP的大小 /dev/shm不是立即占用内存,而是采用需要才占用内存的方法。在上面的例子中,/dev/shm设置的值是20G,我们看到已用写入了9.5G的数据,也就是占用了9.5G的内存。

二,特点

1.动态文件系统
2.tmpfs 文件系统会完全驻留在内存 RAM 中,读写速度快
3.tmpfs 数据在重新启动之后不会保留,例如重启,重新加载,绑定等操作都会清空/dev/shm下的内容

三,/dev/shm 用途

tmpfs是基于内存的,速度是不用说的,硬盘和它没法比。Oracle 中的Automatic Memory Management特性就使用了/dev/shm。另外如果在网站运维中好好利用tmpfs,将有意想不到的收获。

四,/dev/shm 设置和修改

For temporary mounting-

 
  1. mount -o remount,size=5G /dev/shm

For permanent mounting,paste the below given bolded line in /etc/fstab:

 
  1. vi /etc/fstab
  2. **none /dev/shm tmpfs defaults,size=5G 0 0**

save and close the /etc/fstab file.

 
  1. > # mount -o remount /dev/shm

& Verify the mounting.

 
  1. # df -Th

五,问题解决:

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

 
  1. # umount /dev/shm umount: /dev/shm: device is busy.

用fuser处理

 
  1. # fuser -km /dev/shm
  2. # umount /dev/shm
  3. # mount /dev/shm

fuser命令
-k:kill processes accessing the named file(杀死所有正在访问指定文件的进程 )
-m 表示指定文件所在的文件系统或者块设备(处于 mount 状态)。
所有访问该文件系统的进程都被列出。

转载于:https://www.cnblogs.com/haoxiaoyu/p/c7f364de3598978b5ab293e8fb0e3cca.html

你可能感兴趣的文章
filter 过滤器(监听)
查看>>
Linux进程间通信---共享内存
查看>>
Computer Information
查看>>
交换机/路由器上的 S口 F口 E口
查看>>
P1298(矩阵切割)DP
查看>>
wzplayer for delphi demo截图
查看>>
团队第二周:SRS文档
查看>>
Zookeeper的安装与使用:
查看>>
密码策略限制最大与最小长度
查看>>
正则表达式模式
查看>>
使用iframe实现同域跨站提交数据
查看>>
Mouse点击之后,复制GridView控件的数据行
查看>>
ASP.NET开发,从二层至三层,至面向对象 (2)
查看>>
如何查看自己电脑支持OpenGL core版本
查看>>
页面元素定位 XPath 简介
查看>>
[转]loadrunner:系统的平均并发用户数和并发数峰值如何估算
查看>>
Linux下Tomcat重新启动
查看>>
HTML Table to Json
查看>>
Theano 学习笔记(一)
查看>>
1.7 节点进行排序显示
查看>>