完成后,link / rm / mv是否会立即同步dentry元数据?

问题描述 投票:0回答:1

完成后,链接/ rm / mv会立即将dentry元数据同步到永久存储吗?如果不是,何时?

linux inode ext4
1个回答
0
投票

https://www.kernel.org/doc/Documentation/sysctl/vm.txt,我得到这个:

drop_caches

写入此内容将导致内核删除干净的缓存,以及可重新填充的slab对象(如dentries和inode)。一旦丢弃,他们的记忆就会变得自由

要释放pagecache:

echo 1> / proc / sys / vm / drop_caches

要释放可回收的slab对象(包括dentries和inode):

echo 2> / proc / sys / vm / drop_caches

要释放slab对象和pagecache:

echo 3> / proc / sys / vm / drop_caches

这是一种非破坏性操作,不会释放任何脏物。为了增加此操作释放的对象数,用户可以在写入/ proc / sys / vm / drop_caches之前运行`sync'。这将最大限度地减少系统上脏对象的数量,并创建更多要删除的候选对象。

此文件不是控制各种内核缓存(inode,dentries,pagecache等)增长的方法。当系统上其他地方需要内存时,内核会自动回收这些对象。

使用此文件可能会导致性能问题。由于它会丢弃缓存的对象,因此重新创建已删除的对象可能会花费大量的I / O和CPU,尤其是在它们被大量使用的情况下。因此,建议不要在测试或调试环境之外使用。

使用此文件时,您可能会在内核日志中看到信息性消息:

cat(1234):drop_caches:3

这些仅供参考。它们并不意味着您的系统出现任何问题。要禁用它们,请将4(第3位)回显到drop_caches。

© www.soinside.com 2019 - 2024. All rights reserved.