在工作中,我想使用 KDEdolphin
作为文件管理器。然而,我们的主目录驻留在 AFS 共享上 [1]。当启动dolphin时,它会在数十分钟内变得没有反应。
跟踪它显示它尝试打开 AFS 树中的所有节点:
openat(AT_FDCWD, "/afs/somewhereElse.tld", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC
我需要阻止海豚这样做;这种行为使得该程序在 AFS 树上完全无法使用。有一些设置可以控制这个吗?
[1] 如果您以前从未使用过AFS,那么对于这个问题,假设有一个根目录,其下挂载着来自不同大学、研究机构等的子树。这些子树中的数据实际上驻留在远程站点,因此访问速度慢且占用资源。
答案1
虽然这并不能完全解决这里提出的问题,但现在 OpenAFS 客户端中有一个名为 -dynroot-sparse 的选项,它试图减少 /afs 下可见的目录数量。这可以帮助避免进程仅通过读取 /afs 中的目录来尝试遍历世界上的所有 AFS 单元(但它不会阻止任何内容遍历本地单元中的所有内容)。看AFSD(8)。
KDE 的东西确实需要检测网络文件系统,并且默认不遍历整个文件系统(许多程序都做类似的事情,只是通过检测某些文件系统,如 AFS、NFS、sshfs 等)。如果您想在那里提出这个问题,这里有一个关于这个一般问题的错误:https://bugs.kde.org/show_bug.cgi?id=178678。听起来这仍然是一个问题。
答案2
您启用了预览吗?我知道我的系统会读取当前目录,并且更深一层能够在文件夹上显示指示内容的可爱迷你图标。关闭此功能应该会有所帮助。
海豚每次出发都会发生这种情况吗?或者只是第一个?系统可能通过读取内容来构建文件系统缓存。虽然我不确定为什么它会读取整个结构。您是否正在运行某种索引软件?