0
点赞
收藏
分享

微信扫一扫

在 Linux 上如何清除内存的 Cache、Buffer 和交换空间

在 Linux 上如何清除内存的 Cache、Buffer 和交换空间_linux



 

如何在 Linux 中清除缓存(Cache)?

 

每个 Linux 系统有三种选项来清除缓存而不需要中断任何进程或服务。

 

(LCTT 译注:Cache,译作“缓存”,指 CPU 和内存之间高速缓存。Buffer,译作“缓冲区”,指在写入磁盘前的存储在内存中的内容。在本文中,Buffer 和 Cache 有时候会通指。)

 

仅清除页面缓存(PageCache)


#echo


清除目录项和inode


#echo


清除页面缓存,目录项和inode


#echo


 




#!/bin/bash# 注意,我们这里使用了 "echo 3",但是不推荐使用在产品环境中,应该使用 "echo 1"echo "echo 3 > /proc/sys/vm/drop_caches


 

 

如何清除Linux的交换空间?

 

如果你想清除掉的空间,你可以运行下面的命令:

 


swapoff


 

此外,了解有关风险后,您可以将上面的命令添加到cron中。

现在,我们将上面两种命令结合成一个命令,写成正确的脚本来同时清除RAM缓存和交换空间。

 




#echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'或#'echo 3 > /proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'


在测试上面的命令之前,我们在执行脚本前后运行“free -m” 来检查缓存。

 

 

在 Linux 上如何清除内存的 Cache、Buffer 和交换空间_linux_02 


举报

相关推荐

0 条评论