首页 > 日记 > CentOS下使用及修改tmpfs(内存文件系统)
2015
02-08

CentOS下使用及修改tmpfs(内存文件系统)

默认安装的CentOS,已经开启了tmpfs。tmpfs会使用内存,如果内存用完,会用swap空间。调整tmpfs大小,别超过内存+swap的大小。如果系统资源紧张,用完了内存,用到swap时,tmpfs的效率就大幅度降低了。所以不妨多安装些内存,反正内存价格也没多贵。tmpfs是内存文件系统,类似于DOS年代的ramdisk,mount上去就能用了,不需要用mkfs之类的命令来初始化。

# cat /etc/fstab

LABEL=/                 /                        ext3    defaults        1 1
LABEL=/home         /home                ext3    defaults        1 2
LABEL=/boot1        /boot                  ext3    defaults        1 2
tmpfs                    /dev/shm             tmpfs   defaults        0 0
devpts                   /dev/pts              devpts  gid=5,mode=620  0 0
sysfs                      /sys                    sysfs   defaults        0 0
proc                      /proc                  proc    defaults        0 0
LABEL=SWAP-sda3  swap                  swap    defaults        0 0

其中tmpfs那一行,就是开启tmpfs。在tmpfs里存放的文件,读写非常快,毕竟直接读取内存,当然比读取磁盘快多了。tmpfs里的文件,重启后就没了。适合存放session,或其他临时性的文件。可以大幅度提供读写速度。

4G的内存,系统默认为开2G的tmpfs空间。

12G的内存,系统默认开6G的tmpfs空间。就是说,默认开一半的内存空间来给tmpfs。

可以使用 shm_open,shm_unlink等方法来操作tmpfs。

查看tmpfs大小:
df -h /dev/shm

Filesystem           Size  Used Avail Use% Mounted on
tmpfs                 2.0G   24K  2.0G   1% /dev/shm

修改tmpfs大小 
修改/etc/fstab 文件中的tmpfs那一行: 
tmpfs /dev/shm tmpfs defaults,size=8192M 0 0

然后重新加载tmpfs。

# umount /dev/shm; mount /dev/shm; df -h /dev/shm
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                  8.0G     8.0G   0% /dev/shm

最后编辑:
作者:ning
这个作者貌似有点懒,什么都没有留下。