Linux 下的tmpfs文件系统(/dev/shm)

介绍

   / dev/shm/ 是一个使用就是 tmpfs 文件系统 的设备,其实就是一个特殊的文件系统。 redhat 中默认大小为物理内存的一半 使用时不用 mkfs 格式化。

   tmpfs是 Linux/Unix系统上的一种基于内存的 虚拟 文件系统。tmpfs可以使用您的内存或swap分区来存储文件( 即它的存储空间在 virtual memory  中 , VM 由 real memory 和 swap 组成 )。由此可见,tmpfs主要存储暂存的文件。它有如下2个优势 : 1. 动态文件系统的大小。2. tmpfs  使用 VM 建的文件系统,速度当然快 。3. 重启后数据丢失。

   当删除 tmpfs 中的文件时 ,tmpfs 会动态减少文件系统并释放 VM 资源 LINUX 中可以把一些程序的临时文件放置在 tmpfs中,利用 tmpfs 比硬盘速度快的特点提升系统性能 。实际应用中,为应用的特定需求设定此文件系统,可以提升应用读写性能,如将 squid  缓存目录放在 /tmp, php session  文件放在 /tmp, socket 文件放在 /tmp,  或者使用 /tmp 作为其它应用的缓存设备

临时修改/dev/shm大小

#mount -o size=1500M -o nr_inodes=1000000 -o noatime,nodiratime -o remount /dev/shm

mount -t tmpfs -o size=20m tmpfs /tmp   临时挂载使用

开机启用的配置

可以在 /etc/fstab   中定义其大小

tmpfs /dev/shm                 tmpfs,defaults,size=512m          0 0

tmpfs                    /tmp                          tmpfs defaults,size=25M              0 0

修改后执行 mount -o remoount /dev/shm  后生效

mkdir /dev/shm/tmp    (/dev/shm/  下新建的目录与 /tmp 绑定   则 /tmp  即使用 tmpfs 文件系统 )

chmod 1777 /dev/shm/tmp

mount --bind /dev/shm/tmp /tmp

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。