Linux内存清理
2017-10-07 17:29
162 查看
Linux内存清理
一、手动清理Writing to
this will cause the kernel to drop clean caches,
dentries and inodes
from memory,
causing that memory to become free.
To free pagecache:
* echo
1
>
/proc/sys/vm/drop_caches
To free dentries
and inodes:
* echo
2
>
/proc/sys/vm/drop_caches
To free pagecache,
dentries and inodes:
* echo
3
>
/proc/sys/vm/drop_caches
As
this
is a non-destructive
operation,
and dirty objects are notfreeable,
the user should run "sync" first
in order to make sure allcached objects are freed.
This tunable was added
in
2.6.16.
这里有三个级别可以使用。使用1时只清理pagecahe ,使用2清理dentries和inodes(也就是slab缓存,查看方式为:cat
/proc/meminfo,SReclaimable表示可回收的内存) ,使用3时三者都清理。
由于这是一个非破坏性操作而且脏对象不会被释放,因此应当先执行”sync“后再设置这个参数。
二、自动清理
/proc/sys/vm/min_free_kbytes
该文件表示强制Linux VM最低保留多少空闲内存(Kbytes)。
当可用内存低于这个参数时,系统开始回收cache内存,以释放内存,直到可用内存大于这个值。
vm.min_free_kbytes=4096000 //单位 kb
vm.swappiness=40
vm.vfs_cache_pressure=200
说明:
1.调整min_free_kbytes的目的是保持物理内存有足够的空闲空间,防止突发性的换页。
2.swapiness缺省为60,减少swapiness会使系统尽快通过swapout不使用的进程资源来释放更多的物理内存。
3.vfs_cache_pressure的缺省值是100,加大这个参数设置了虚拟内存回收directory和i-node缓冲的倾向,这个值越大,回收的倾向越严重。调整这3个参数的目的就是让操作系统在平时就尽快回收缓冲,释放物理内存,这样就可以避免突发性的大规模换页。
减少vfs_cache_pressure的值,会导致内核倾向于保留dentry和inode缓存。
增加vfs_cache_pressure的值,(即超过100时),则会导致内核倾向于重新声明dentries和inodes
总之,vfs_cache_pressure的值:
小于100的值不会导致缓存的大量减少
超过100的值则会告诉内核你希望以高优先级来清理缓存。
其实无论vfs_cache_pressure的值采用什么值,内核清理缓存的速度都是比较低的。
如果将此值设置为10000,系统将会将缓存减少到一个合理的水平。
三、查看空闲内存阈值:
sysctl -a | grep min_free_kbytes
具体设置【重启失效】:
echo 1024000 > /proc/sys/vm/min_free_kbytes //设置1G的阈值
echo 200 > /proc/sys/vm/vfs_cache_pressure
echo 40 > /proc/sys/vm/swappiness
或
sysctl -w vm.min_free_kbytes=1024000
sysctl -w vm.vfs_cache_pressure=200
sysctl -w vm.swappiness=40
那么Linux空闲内存=102400kb+原始预留空闲内存(如我的是700M左右)
相关文章推荐
- linux 清理内存命令详细介绍
- Linux内存分析与清理
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- CentOS7(Linux)清理yum缓存 和释放内存方法
- linux清理内存
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- Linux查看CPU型号及内存频率及其它信息与清理内存的命令
- linux清理内存命令
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- 清理linux内存cache
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- linux清理内存、缓存
- linux 内存清理/释放命令
- linux内存清理
- linux 内存清理释放命令
- Linux清理内存和Cache
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
- linux 内存清理/释放命令