![gvfsd-trash 清理垃圾的方法](https://linux22.com/image/1434824/gvfsd-trash%20%E6%B8%85%E7%90%86%E5%9E%83%E5%9C%BE%E7%9A%84%E6%96%B9%E6%B3%95.png)
使笔记本电脑达到极限的一种方式是使用基于 nautilus 的 FM 在基于 gnome 的 DE 中清理垃圾。由于垃圾中包含大量文件(例如,整个 android 开源项目的副本),清理垃圾会使笔记本电脑非常热,并在删除它们之前停止运行。
根据top
,该过程gvfsd-trash
使用大约 50% 的资源,而且需要很长时间才能完成。使用命令清除目录~/.local/share/Trash
或任何包含“垃圾文件”的目录,以期避免删除,rm -rf
比 快得多gvfsd-trash
。与简单命令相比, 怎么gvfsd-trash
做rm -rf
?
答案1
我对 gvfsd-trash 又恨又恨。我认为它在单台 PC 上可以很好地工作,但在小型办公网络中,它可能变成一场噩梦。我怀疑它在清空垃圾时,会边做“整理”工作。当挂载点移动或权限和所有权发生变化时,情况会变得复杂。每次机器启动时,它似乎也会长时间占用 CPU 来解决问题。
当 gvfsd-trash 开始减慢机器速度时,我的技巧是使用:
$ sudo rm -rf ~/.local/share/Trash
这可以清除我自己机器上的垃圾。守护进程还会在网络安装的根目录中创建名为“.Trash-1000”的目录。使用以下命令删除它们
$ sudo rm -rf [..path to file..]/.Trash-1000
从每个网络共享所在的服务器解决了很多性能问题。这里的“1000”是我的 UID,你的可能不同。一旦垃圾目录消失,“gvfsd-trash”似乎非常擅长清除它的包袱。
注意:这在 Ubuntu / Mint 系统上有效,其中“sudo”提供 root 权限。对于其他发行版,请使用适当的技术。如果“rm”命令在没有 root 权限的情况下工作,那就更好了,但如果不能,问题通常会变得最严重。
答案2
我对 gvfsd-trash 不太熟悉,但我认为有几个因素导致了这种情况。GNOME 垃圾文件夹适用于整个系统甚至网络上的文件和文件夹。因此,我相信它会保留一个数据库,记录这些文件最初存储的位置,这样如果您右键单击垃圾文件夹中的文件并恢复它,它就会知道将其恢复到哪里。它还可能保留有关这些文件的一些其他元数据 - 如删除时间戳、原始所有权、访问时间和修改时间信息 - 当文件从系统上的某个位置移动到用户的垃圾文件夹时,这些数据通常会“丢失”。对于像 Android 源目录这样的目录,这是一个很多文件来保留这种元数据,我的猜测是,从“垃圾”文件夹中删除这些文件需要一段时间才能清理所有这些信息。