Li**x如何使用指令释放缓存

时间:2016.10.23 发布人:56rg

Li**x如何使用指令释放缓存

已解决问题

谷歌56rg用户在2016.10.23提交了关于“我爸是李刚Li**x如何使用指令释放缓存”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-25T20:03:26。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,千言万语,表达不了我的感激之情,我已铭记在心 !

希望以下的回答,能够帮助你。

第1个回答

用户名:纸飞机33  

很多朋友都说自己的Li**x系统变得很慢!其实很多是因为缓存太多了的问题!现蒸呢他困读滑奏逐者在我就告诉你们如何良德急良**缓存吧!


Li**x系统的缓存机制财帮站连低查是相当先进的,他会针对d病般题方entry(用于VFS,加速文件路径名到inode的转换)、BufferCac少虽委火底下he(针对磁盘块的读写)和PageCache(针对文件inode的读写)进行缓存操作。但是在进行了大量架操决推表久温文件操作之后,缓存会把内存资源基本用光。但实际上我们总升参必土问文件操作已经完成,这部分缓存已经用不到粒具力个重绿影款类持了。这个时候,我们难道只能眼睁睁的看着缓存把内存空间占据掉么?

所以,我们还是有必要来手动进行Li**x下释放内存点给任该话长门兴的操作,其实也就是释放缓存的操作了。

要达到释放缓存的目的,我们首先需要了解下关键的配置文件/proc/sys/vm/drop_caches。这个文件中记录了缓存释放的参数,默认值为0,也就是不释放缓存。他的值可以为0~3之间的任意数字,代表着不同的含义:

0–不释放

1–释放页缓存

2–释放dentries和inodes

3–释放所有缓存

道了参数后,我们就可以根据我们的需要,使用下面的指令来进行操作。

首先我们需要使用sync指令,将所有未写的系统缓冲区写到磁盘中,包含已修改的i-node、已具的当影吧质延迟的块I/O和读写映射文件。否则在释放缓存的过程中,可能会丢失未保存的文件。

#sync

接下来,我们需要将需要的参数写进/proc/sys/vm/drop_c利烧令战aches文件中,比如我们需要释放所转滑未虽额医有缓存,就输入下面的命令:

#echo3》/p其阿先由精究课写活战roc/sys/vm/drop_caches

此指令输入后会立即生效,可以查询现在的可用内存明显的变多了。

要查询当前缓存释放的参数,可以输入下面的指令:

#cat/proc/sys/vm/drop_caches

上面就是Li**x使用指令释放缓存的方法介绍了,如果你觉得你的电脑越来越,那么可能是你的内存被大量占用了,不妨对电脑垃圾**下吧。