Linux内存占用释放

1.查看/proc/sys/vm/drop_caches的值

[root@iZbp1f0xuq9rc41s6gdvfyZ conf]# cat /proc/sys/vm/drop_caches
1

2.运行sync命令

[root@iZbp1f0xuq9rc41s6gdvfyZ conf]# sync

3.输入手动释放内存的命令

[root@iZbp1f0xuq9rc41s6gdvfyZ conf]# echo 1 > /proc/sys/vm/drop_caches

drop_caches的值可以是0-3之间的数字,代表不同的含义:
0:不释放(系统默认值)
1:释放页缓存
2:释放dentries和inodes
3:释放所有缓存
4.释放完内存后改回去让系统重新自动分配内存

[root@iZbp10soem5oe1q3e4tkhwZ mysql]# echo 0 > /proc/sys/vm/drop_caches

看内存是否已经释放掉了。

[root@iZbp1f0xuq9rc41s6gdvfyZ conf]# free -h


linux内存释放
第一行用全局角度描述系统使用的内存状况:

total 内存总数
used 已经使用的内存数,一般情况这个值会比较大,因为这个值包括了cache 应用程序使用的内存
free 空闲的内存数
shared 多个进程共享的内存总额
buffers 缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加)
cached 缓存,用于已打开的文件

第二行描述应用程序的内存使用:
-buffers/cache 的内存数:used - buffers - cached
buffers/cache 的内存数:free buffers cached
前个值表示-buffers/cache 应用程序使用的内存大小,used减去缓存值
后个值表示 buffers/cache 所有可供应用程序使用的内存大小,free加上缓存值

第三行表示swap的使用:
used 已使用
free 未使用 

猜你喜欢

转载自blog.csdn.net/yexiaomodemo/article/details/105392911