文件缓存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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM