• 释放linux的buff/cache


    有个linux的服务器,2G内存的,今天登上去一看,内存竟然被占得满满的.
    ssh上去执行了free.

    free -m
    total        used        free      shared  buff/cache   available
    Mem:           2000         182         191           3        1625        1614
    Swap:             0           0           0
    
    

    发现内存全在一个[buff/cache]里.
    查询资料得知可以通过proc下的一个文件释放,
    以下原文:

    /proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段.也就是说可以通过修改/proc中的文件,来对当前kernel的行为做出调整.那么我们可以通过调整/proc/sys/vm/drop_caches来释放内存.操作如下:
    [root@server test]# cat /proc/sys/vm/drop_caches
    0
    首先,/proc/sys/vm/drop_caches的值,默认为0
    [root@server test]# sync
    手动执行sync命令(描述:sync 命令运行 sync 子例程。如果必须停止系统,则运行 sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件)
    [root@server test]# echo 3 > /proc/sys/vm/drop_caches
    [root@server test]# cat /proc/sys/vm/drop_caches
    3
    将/proc/sys/vm/drop_caches值设为3
    [root@server test]# free -m
    total used free shared buffers cached
    Mem: 249 66 182 0 0 11
    -/+ buffers/cache: 55 194
    Swap: 511 0 511
    再来运行free命令,发现现在的used为66MB,free为182MB,buffers为0MB,cached为11MB.那么有效的释放了buffer和cache.

    引用自:http://blog.chinaunix.net/uid-24020646-id-2939696.html

    根据资料,只需要执行下面2个命令,即可释放:

    sync
    echo 1 > /proc/sys/vm/drop_caches
    echo 2 > /proc/sys/vm/drop_caches
    echo 3 > /proc/sys/vm/drop_caches
    

    首先是把缓存都写到磁盘,然后分三步把缓存清理掉.

  • 相关阅读:
    2015-12-25-(菜单栏的效果)
    2015-12-23-(实现左边题目,右边内容的效果)
    2015-12-23-( dispaly:table的用法)
    2015-12-21(box-sizing:border-box)
    闭包
    js中this的用法
    jQuery或Angular实现弹出框单击显示,双击隐藏
    jQuery 点击任意处隐藏,除某个元素外
    导航栏滚动到顶部后固定
    h5 audio标签在手机上不能自动播放????
  • 原文地址:https://www.cnblogs.com/DragonStart/p/7805477.html
Copyright © 2020-2023  润新知