在Linux系统中,缓存(Cache)通常指的是文件系统缓存,也就是Page Cache。Linux内核会将最近访问过的文件数据缓存在内存中,以提高后续对这些数据的访问速度。查看缓存占用的方法主要有以下几种:
free
命令free
命令可以显示系统的总内存使用情况,包括缓存和缓冲区。
free -h
输出示例:
total used free shared buff/cache available
Mem: 7.7G 2.3G 4.8G 268M 647M 4.9G
Swap: 2.0G 0B 2.0G
在这个输出中,buff/cache
表示缓冲区和缓存的总和。
vmstat
命令vmstat
命令可以显示虚拟内存统计信息,包括缓存和缓冲区的使用情况。
vmstat -s | grep "used swap"
vmstat -s | grep "used memory"
vmstat -s | grep "free memory"
vmstat -s | grep "buffer memory"
vmstat -s | grep "swap cache"
vmstat -s | grep "active memory"
vmstat -s | grep "inactive memory"
/proc/meminfo
文件/proc/meminfo
文件包含了详细的内存使用信息,可以通过查看这个文件来获取缓存的具体数值。
cat /proc/meminfo | grep -i cache
输出示例:
MemTotal: 8176984 kB
MemFree: 5095924 kB
MemAvailable: 5830804 kB
Buffers: 83884 kB
Cached: 1024004 kB
SwapCached: 0 kB
Active: 987654 kB
Inactive: 654321 kB
...
在这个输出中,Buffers
表示缓冲区,Cached
表示文件系统缓存。
top
命令top
命令可以实时显示系统的进程和资源使用情况,包括内存使用情况。
top
在top
的输出中,可以看到Mem
行和Swap
行,其中Mem
行中的buffers/cache
表示缓冲区和缓存的总和。
echo 3 > /proc/sys/vm/drop_caches
这个命令会清理页缓存、目录项缓存和inode缓存。
希望这些信息对你有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云