Linux内存分析与清理

2023-03-01 18:45:27 浏览数 (1)

1 Linux中查看内存的命令为free,命令如下:

代码语言:javascript复制
free -h
      total    used    free      shared  buff/cache   available
 Mem: 15G      11G     3.0G         36M        563M        3.3G
 Swap:0B       0B       0B

每一列的解释如下:

  • total:内存总数
  • used:已经使用的内存数
  • free:空闲的内存数
  • shared:当前已经废弃不用
  • buffers Buffer:缓存内存数
  • cached Page:缓存内存数
2. 清理cache

/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段。也就是说可以通过修改/proc中的文件,来对当前kernel的行为做出调整。那么我们可以通过调整/proc/sys/vm/drop_caches来释放内存。/proc/sys/vm/drop_caches中的默认值为0,值为1时表示可以释放pagecache缓存,值为2时可以释放pagecache和inode缓存,值为3时可以释放pagecache, dentries和inodes缓存。当然在释放内存之前需要执行sync命令。

代码语言:javascript复制
sync && echo 1 > /proc/sys/vm/drop_caches 
sync && echo 2 > /proc/sys/vm/drop_caches 
sync && echo 3 > /proc/sys/vm/drop_caches

0 人点赞