Linux手动清除内存命令的方法

Linux操作系统随着时间的推移会产生很多缓存暂用系统物理内存,Linux百科分享手动清除和释放内存的方法:

Linux手动清除缓存的方法

Linux长时间使用会导致cache缓存占用过大,甚至拖累CPU的使用率,Linux百科网可以通过命令手动释放Linux内存,详细教程如下:

一:先查看下当前Linux的内存占用情况

  • 命令:free -m
  • 示例如下:

    [root@linuxbaike ~]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1839         305         510           0        1023        1381
    Swap:          1024           0        1024

    如上述例子所示,Linux百科网使用一台1核2G的云服务器做测试:

    total:是指计算机总物理内存;
    used:已用的内存;
    free:空余的内存;
    total = used + free
    shared:被多个进程共享的内存;
    buff/cache:buffers用于存放要输出到disk(块存储)的数据,在这里buff是指被OS buffer住的内存(written to disk);cached存放从disk上读出的数据,Buffer和cache是为了提高IO性能并由OS管理。

    一般我们清理Linux缓存主要是清理buff/cache占用的内存资源。

    二:执行sync命令

  • 命令:sync
  • 执行sync命令是为了确保文件系统的完整性,手动执行sync命令,将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件。

    三:执行清除Linux缓存命令

  • 命令:echo 3 > /proc/sys/vm/drop_caches
  • /proc是一个虚拟文件系统,通过对它的读写操作做为与kernel实体间进行通信的一种手段。Linux百科网通过修改/proc中的文件来对当前kernel的行为做出调整。所以,我们通过调整/proc/sys/vm/drop_caches来释放内存。

    综上,Linux百科网3条命令即可清除Linux缓存释放内存。

    2023服务器优惠,阿里云PK腾讯云!
    ①阿里云:阿里云5M带宽服务器60元1年起(1c2g/2c4g/2c8g/4c8g/8c16g/16c32g)
    ②腾讯云:腾讯云2核4G服务器8M带宽74元一年(有高配)
    ③华为云:华为云1核2服务器1M带宽60元一年(配置多款可选)
    ⑤代金券:阿里云代金券限量发放中(有账号就能领)