Linux 将/proc/sys/vm/drop\u缓存重置为默认值0

Linux 将/proc/sys/vm/drop\u缓存重置为默认值0,linux,unix,caching,server,debian,Linux,Unix,Caching,Server,Debian,最近,我尝试清空Debian Web服务器上的缓冲区缓存。我使用的命令是: free&&sync&&echo 3>/proc/sys/vm/drop\u缓存和free 到目前为止,运行cat/proc/sys/vm/drop_caches打印的值为3 当我尝试使用sync&&echo 0>/proc/sys/vm/drop\u caches将值重置为0时,此错误显示: bash:echo:write错误:参数无效 这是因为drop\u caches是一个命令,而不是要设置的变量。我发现: sud

最近,我尝试清空Debian Web服务器上的缓冲区缓存。我使用的命令是:

free&&sync&&echo 3>/proc/sys/vm/drop\u缓存和free

到目前为止,运行
cat/proc/sys/vm/drop_caches
打印的值为3

当我尝试使用
sync&&echo 0>/proc/sys/vm/drop\u caches
将值重置为0时,此错误显示:

bash:echo:write错误:参数无效

这是因为
drop\u caches
是一个命令,而不是要设置的变量。我发现:

sudo sysctl-w vm.drop\u caches=3

它会立即清除页面缓存、dentries和inode,并且仅当再次调用
sysctl-w
时才会再次清除,显然不需要以显式方式将其设置回0。Debian不支持命令sysctl,因此我正在寻找一个替代命令,更准确地说:


如何重置drop\u缓存或立即清空缓存以将值重置为0?

值1-3只是一次操作触发器。没有值0

sysctl在程序包procps中


apt install procps

值1-3只是一次触发动作。没有值0

sysctl在程序包procps中


apt install procps

感谢@lbor的回复。因此,将任何值设置为1-3只会触发清除缓存一次的操作,对吗?我知道必须单独安装
sysctl
,这就是为什么我要求安装一个替代命令,该命令似乎正在将值直接写入
drop\u缓存
文件。
sysctl-w vm.drop_caches=0是否有效?只能使用值1、2和3。没有值0。您只启动触发器,清除缓存和缓存将立即再次启动缓存。有关更多信息,请查看感谢@lbor的回复。因此,将任何值设置为1-3只会触发清除缓存一次的操作,对吗?我知道必须单独安装
sysctl
,这就是为什么我要求安装一个替代命令,该命令似乎正在将值直接写入
drop\u缓存
文件。
sysctl-w vm.drop_caches=0是否有效?只能使用值1、2和3。没有值0。您只启动触发器,清除缓存和缓存将立即再次启动缓存。有关更多信息,请查看