b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

如何在Linux上清除内存的缓存,缓冲区和交换空间

电脑杂谈  发布时间:2020-08-12 17:11:33  来源:网络整理

linux 内存清理_安卓清理内存软件_ipad内存清理内存

与其他任何操作系统一样,GNU / Linux实现的内存管理不仅有效,而且更好. 但是,如果有任何进程吞噬了您的内存,而您想清除它,Linux提供了一种刷新或清除RAM缓存的方法.

Clear RAM Cache and Swap in Linux

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

每个Linux系统都有三个选项来清除缓存,而不会中断任何进程或服务.

(LCTT注释: 缓存,翻译为“缓存”,是指CPU和内存之间的高速缓存. 缓冲区,翻译为“缓冲区”,是指写入磁盘之前存储和内存的内容. 文章,有时将“缓冲区和缓存”一起提到. )

仅清除页面​​缓存(PageCache)

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

清除目录条目和索引节点

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

安卓清理内存软件_ipad内存清理内存_linux 内存清理

清除页面缓存,目录条目和索引节点

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

上述命令的说明:

sync将刷新文件系统缓冲区. 命令之间用“;”分隔并按顺序执行. Shell将等待命令终止,然后再执行序列中的下一个命令. 如内核文档中所述,写入drop_cache将清除缓存,而不会终止任何应用程序/服务. echo命令完成写入文件的工作.

如果必须清除磁盘缓存,则第一个命令在企业和生产环境中是最安全的,“ ... echo 1> ...”将仅清除页面​​缓存. 除非您知道自己在做什么,否则不建议在生产环境中使用上面的第三个选项“ ... echo 3> ...”,因为它会清除缓存页面,目录条目和索引节点.

释放Linux内核可能使用的缓冲区和缓存是个好主意吗?

当您设置许多设置并要检查效果时,如果它实际上是专门针对I / O范围的基准测试,则可能需要清除缓冲区和缓存. 您可以如上所述删除缓存,而无需重新启动系统(即,无需停机).

Linux旨在在查找磁盘之前先查找磁盘高速缓存. 如果发现资源在缓存中,则该请求将不会发送到磁盘. 如果我们清理缓存,则磁盘缓存将无法工作,并且系统将在磁盘上寻找资源.

此外,清除缓存后,还会降低系统速度,并且系统会将每个请求的资源再次加载到磁盘缓存中.

linux 内存清理_安卓清理内存软件_ipad内存清理内存

现在,我们将创建一个Shell脚本,以通过cron调度任务每天下午2点自动清除RAM缓存. 创建如下的shell脚本clearcache.sh并在其中添加以下行:

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

设置对clearcache.sh文件的执行权限

# chmod 755 clearcache.sh

现在,仅在需要清除内存缓存时才需要调用脚本.

现在,每天下午2点设置一个定时任务,以清除RAM缓存并打开crontab进行编辑.

# crontab -e

添加以下行,保存并退出.

0 3 * * * /path/to/clearcache.sh

linux 内存清理_安卓清理内存软件_ipad内存清理内存

有关如何创建计划任务的更多详细信息,请查看我们的文章11计划任务示例.

在生产环境中自动清除服务器上的RAM是个好主意吗?

不!它不是. 想一想当您安排脚本每天凌晨2点清除内存缓存时的情况. 然后脚本将执行并刷新您的内存缓存. 出于某些原因,某天某天,您网站的用户向服务器请求的资源可能会超出预期.

这时,计划的脚本运行并清除了缓存中的所有内容. 当所有用户从磁盘读取数据时,这将导致服务器崩溃并损坏. 因此,仅在必要时并按您的期望清除缓存,否则您将是乏味的系统管理员.

如何清除Linux交换空间

如果要清除空间,可以运行以下命令:

# swapoff -a && swapon -a

此外,了解风险之后,可以将以上命令添加到cron中.

现在,我们将以上两个命令组合为一个命令,并编写正确的脚本以同时清除RAM缓存和交换空间.

linux 内存清理_ipad内存清理内存_安卓清理内存软件

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

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

在测试上述命令之前,我们在执行脚本之前和之后运行“ free -m”以检查缓存.

Clear RAM Cache and Swap Space

就是这样,如果您喜欢这篇文章,别忘了向我们提供您的宝贵意见,让我们知道,您认为清除企业和生产环境中的内存缓存和缓冲区是个好主意吗?

通过:

作者: Avishek Kumar译者: 挣扎的青少年校对: wxy

本文最初由LCTT翻译,Linux China很荣幸推出


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-297497-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 陈顺
        陈顺

        中国是一个爱好和平的国家

      热点图片
      拼命载入中...