我们日常操作中经常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

oracle dev shm 扩展,linux的/dev/shm目录用于优化相关推荐

  1. dev shm与oracle,【OS】Linux下/dev/shm的作用及ORA-00845错误的处理

    Linux操作系统,oracle 11.2.0.4 启动实例时出现如下错误: SQL> startup nomount pfile=/u03/app/oracle/11.2.0/db/dbs/i ...

  2. linux dev shm,使用Linux的/dev/shm

    挖掘一个很久之前的设想,06年的,之前的想法是用tmpfs,tmpfs是RAM和磁盘swap的混杂机制,大部分的情况是优先使用内存空间,尽管本质上是非持久存储,但性能上远不是磁盘甚至固态硬盘所能企及的 ...

  3. linux系统装好后优化,CentOS 5.6 Linux安装系统后的基本优化

    1.关闭不必要的服务器 #ntsysv 保留 crond Linux计划任务服务 irqbalance 用于优化中断分配,以充分利用CPU 多核 network sshd syslog Linux 日 ...

  4. 【OS】Linux下/dev/shm的作用及ORA-00845错误的处理

    [OS]Linux下/dev/shm的作用 对/dev/shm认识 发表于 2011 年 09 月 25 日 由 惜分飞 一./dev/shm理论 /dev/shm/是linux下一个非常有用的目录, ...

  5. linux shm性能,linux /dev/shm的用途

    /dev/shm/是linux下一个目录,/dev/shm目录不在磁盘上,而是在内存里,因此使用linux /dev/shm/的效率非常高,直接写进内存. 我们可以通过以下两个脚本来验证linux / ...

  6. linux dev shm 的大小,使用linux的/dev/shm增强性能

    一.简介: linux的/dev/shm是一个使用虚拟内存的名为tmpfs的文件系统.虚拟内存资源由物理内存(RAM)和交换分区组成,这些资源是由内核中的虚拟内存子系统来负责分配和管理./dev/sh ...

  7. linux中/dev/shm简介与大小修改

    linux中/dev/shm简介与大小修改 文章目录 linux中/dev/shm简介与大小修改 简介 实操 验证/dev/shm存储位置 修改/dev/shm 大小 简介 linux中/dev目录下 ...

  8. linux下的shm目录

    作用 linux中/dev目录下一般都是一些设备文件,例如磁盘.内存.摄像头等. /dev/shm这个目录是linux下一个利用内存虚拟出来的一个目录,这个目录中的文件都是保存在内存中,而不是磁盘上. ...

  9. linux的dev文件丢失,fstab 文件丢失

    fstab 文件丢失 /etc/fstab是用来存放文件系统的静态信息的文件. 当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的 目录. 1.模拟:可将 ...

最新文章

  1. C++运算符重载形式--成员函数or友元函数?
  2. 2018-2019-2 网络对抗技术 20165320 Exp4 恶意代码分析
  3. 解決“无法解决 equal to 操作的排序规则冲突 ”问题
  4. 程序员基本功05表达式中的陷阱
  5. 如何识别是三层交换机还是二层交换机
  6. 右键添加git-bash
  7. 安装veket到移动硬盘NTFS分区
  8. 【ZZ】 ACM之歌
  9. 华为HCIE7-中间系统到中间系统的路由泄露、防环、认证和优化机制
  10. JSON.parseArray()用法
  11. 阶段3 2.Spring_03.Spring的 IOC 和 DI_4 ApplicationContext的三个实现类
  12. matlab中怎样绘制离散点,matlab中怎么绘制大量的离散点
  13. Socket编程入门(一)实现简单的Socket实例
  14. Blender的一些使用小结,在辣椒酱基础上加了点,会持续更新
  15. 破解绘声绘影x5的方法
  16. 简单好用的开源会议室预约系统
  17. Expected Array got Object
  18. Ubuntu 14.04 配置 Java SE jdk-7u55
  19. java 字符串转utc时间_Java中转UTC时间字符串(含有T Z)为local时间
  20. C++ QT开发人机象棋(评估函数)

热门文章

  1. 微软的复兴之道(3)——直面个人用户,提供全面产品
  2. android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具
  3. 腾讯又一神级APP下架!网友:我用了7年啊。。
  4. react在线文件_程序猿专用十大在线编译器(IDE)整理,干货收藏
  5. python的assert基本用法
  6. 乐乐语音挑战苹果siri,你赌谁赢?
  7. 情缘沙世界,妙笔如生花
  8. Vue2:官方路由 Vue-Router 3.x
  9. 海潮音排序算法:再来个中国造,业余爱好设计的作品
  10. apache commons fileupload 邮箱列表