欢迎访问我的博客,你的支持,是我最大的动力!

CentOS7下/dev/shm的利用及mount --bind目录连接

Linux 小马奔腾 6880℃ 评论
目录:
[显示]
/dev/shm

默认linux发行版内核都会开启tmpfs,映射到/dev/shm目录,通过df命令可以查看到。

/dev/shm目录不在磁盘上,而在内存里,利用这个目录,可以拥有极佳的读写性能,因为对这个目录内文件的读写都是基于内存的。

/dev/shm默认是挂载的,如果没有挂载,可以修改/etc/fstab手动添加,大小通常为物理内存的10%~50%

vi /etc/fstab
tmpfs /dev/shm tmpfs defaults,size=1G 0 0
然后执行mount命令让设置生效
mount -o remount /dev/shm

这样,我们就可以使用/dev/shm了

mount --bind

要使操作更加灵活,比如希望其他目录也使用/dev/shm,那么有两种可行的方法,软连接和mount --bind

1)软连接
mkdir -p /dev/shm/tmp
chmod 755 /dev/shm/tmp
cd ~
ln -s /dev/shm/tmp tmp
#这样,在家目录下就生成了一个tmp目录,指向/dev/shm/tmp/
#tmp -> /dev/shm/tmp/

2)mount --bind
有些程序对符号连接支持并不好,这时就可以使用mount --bind
mount --bind可以将两个目录连接起来,目标文件夹将拥有与源文件夹相同的inode号,和硬连接作用类似,但是硬连接不能连接目录
mount后,目标文件夹下面原来的文件和子目录会被隐藏,但并不删除,umount后即可恢复

mkdir -p /dev/shm/tmp
chmod 755 /dev/shm/tmp
mkdir -p ~/tmp
mount --bind /dev/shm/tmp ~/tmp
#取消
#umount ~/tmp
#注意,mount --bind重启后会丢失挂载,包括/dev/shm目录重启后也会清空,要解决该问题,可以添加开机自启脚本
#添加到/etc/rc.local文件中

 

 

转载请注明:轻风博客 » CentOS7下/dev/shm的利用及mount --bind目录连接

喜欢 (0)or分享 (0)