Linux上清理内存缓存、缓冲与交换空间

每个Linux系统都有三个选项可以在不中断任何进程或服务的情况下清除缓存。

1 只清除页面缓存(pagecache)

sync; echo 1 > /proc/sys/vm/drop_caches

2 清除目录项和inode

sync; echo 2 > /proc/sys/vm/drop_caches

3 清除页面缓存、目录项和i节点

sync; echo 3 > /proc/sys/vm/drop_caches

上述命令的解释

sync命令将刷新文件系统缓冲区。分号(;)分隔的命令依次执行。在执行序列中的下一个命令之前,shell等待每个命令终止。如内核文档中提到的,写入drop_cache将清除缓存而不会终止任何应用程序或服务。echo命令正在做的任务就是写入文件。

如果你必须清除磁盘缓存,在企业和生产环境中第一个命令(“…echo 1>…”)是最安全的,它将仅仅只清除页面缓存。生产环境中不推荐使用上述第三个选项(“…echo 3 >…”),直到你知道你正在做什么。因为它会清除页面缓存,目录项和i节点。
Linux上清理内存缓存、缓冲与交换空间_第1张图片
内容借鉴:https://www.cnblogs.com/minn/p/9030764.html

你可能感兴趣的:(linux,缓存,运维)