文件缓存tmpfs简单使用

文件缓存tmpfs
基于内存的文件系统,直接使用ram(物理内存)+swap(交换分区)

tmpfs缓存文件系统
/dev/shm共享内存
动态的使用虚拟内存,文件删除后释放内存

特性:
1.动态空间使用和动态变化
2.速度
3.没有持久性(重启失效)

主要应用场景:
1.缓存 squid nginx
2.php session /tmp
3.存放socket
4.自定义缓存

1.将文件拷贝到/dev/shm目录中,发现/dev/shm使用率变化了

[root@node1 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 30G 3.9G 27G 13% /
devtmpfs devtmpfs 901M 0 901M 0% /dev
tmpfs tmpfs 912M 0 912M 0% /dev/shm
tmpfs tmpfs 912M 8.8M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 297M 122M 176M 41% /boot
/dev/mapper/centos-data xfs 40G 224M 40G 1% /data
tmpfs tmpfs 183M 0 183M 0% /run/user/0

[root@node1 ~]# cp jdk-8u131-linux-x64.gz /dev/shm
[root@node1 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 30G 3.9G 27G 13% /
devtmpfs devtmpfs 901M 0 901M 0% /dev
tmpfs tmpfs 912M 177M 735M 20% /dev/shm
tmpfs tmpfs 912M 8.8M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 297M 122M 176M 41% /boot
/dev/mapper/centos-data xfs 40G 224M 40G 1% /data
tmpfs tmpfs 183M 0 183M 0% /run/user/0

[root@node1 ~]# free -m
total used free shared buff/cache available
Mem: 1823 640 72 185 1110 768
Swap: 4095 0 4095

2.删除后发现内存也变了

[root@node1 ~]# rm -f /dev/shm/jdk-8u131-linux-x64.gz 
[root@node1 ~]# free -m
total used free shared buff/cache available
Mem: 1823 641 248 8 933 945
Swap: 4095 0 4095

创建文件,并划分为tmpfs文件系统

[root@node1 ~]# mkdir /mnt/data
[root@node1 ~]# mount
mount mount.fuse mountpoint 
[root@node1 ~]# mount -t tmpfs tepfs /mnt/data/
[root@node1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 30G 3.9G 27G 13% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.8M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 122M 176M 41% /boot
/dev/mapper/centos-data 40G 224M 40G 1% /data
tmpfs 183M 0 183M 0% /run/user/0
tepfs 912M 0 912M 0% /mnt/data

3.指定tmpfs文件系统大小为50M

[root@node1 ~]# mkdir /mnt/data1
[root@node1 ~]# mount -t tmpfs -o size=50m tmpfs /mnt/data1
[root@node1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 30G 3.9G 27G 13% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.8M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 122M 176M 41% /boot
/dev/mapper/centos-data 40G 224M 40G 1% /data
tmpfs 183M 0 183M 0% /run/user/0
tepfs 912M 0 912M 0% /mnt/data
tmpfs 50M 0 50M 0% /mnt/data1

4.重新设置tmpfs文件系统大小为100M

[root@node1 ~]# mount -o remount,size=100m /mnt/data
[root@node1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 30G 3.9G 27G 13% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.8M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 122M 176M 41% /boot
/dev/mapper/centos-data 40G 224M 40G 1% /data
tmpfs 183M 0 183M 0% /run/user/0
tepfs 100M 0 100M 0% /mnt/data
tmpfs 50M 0 50M 0% /mnt/data1

5.如果希望重启后还生效,需要写入/etc/fstab,否则可能系统无法正常启动
tempfs /mnt/data tmpfs size=50M 0 0

posted @ 2017-05-15 20:01  reblue520  阅读(2555)  评论(0编辑  收藏  举报