手工释放linux内存——/proc/sys/vm/drop_caches

    在服务器运行了多个程序之后,进程被结束了但是内存一直是caching,重启服务器当然可以解决,但是服务在重启阶段是属于down的状态,这时候可以使用修改/proc/sys/vm/drop_caches来释放内存。

    有关/proc/sys/vm/drop_caches的用法在下面进行了说明
    /proc/sys/vm/drop_caches (since Linux 2.6.16) Writing to this file causes the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.
    To free pagecache, use echo 1 > /proc/sys/vm/drop_caches; to free dentries and inodes, use echo 2 > /proc/sys/vm/drop_caches; to free pagecache, dentries and inodes, use echo 3 > /proc/sys/vm/drop_caches.
    Because this is a non-destructive operation and dirty objects are not freeable, the user should run sync first.

    所以 在服务器执行
    sync
    echo 3 > /proc/sys/vm/drop_caches

    此时使用free查看free buff/cache 的变化