已删除邮件未出现在垃圾箱文件夹中。卡在 .TRASH-1000

mar*_*ich 6 delete btrfs trash

我在我的机器上的 /mnt/btrfs 上安装了三个 3TB 磁盘,采用 BTRFS RAID 1 配置。/btrfs 中有一个符号链接。

这里面有许多子卷,

/archive
/backups
/games
/home
/music
/photos
/temp
/videos
/virtualmachines
Run Code Online (Sandbox Code Playgroud)

/home 安装在 /mnt/btrfs/home/

当我从“家”中的任何文件夹中删除项目时,这些项目会正确进入回收站。我可以轻松恢复和清空。

当我从任何其他 subvol 中删除一个项目时,对象会转到该 subvol 中的 .Trash-1000,这不会出现在我的 bin 中,但必须手动删除。

我怀疑这是一个权限问题,但看不到可能是什么。

任何人都可以为我提供一些建议吗?

Mar*_*ton 4

这不是权限问题。这是一个已知错误,已在https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/1442649上报告(它不仅仅影响 Nautilus)。

除了作为特殊情况的主文件系统(请参阅此处了解完整详细信息)之外,任何已删除的文件都存储在从中删除文件系统的根目录内的目录中,以避免在文件系统之间进行复制。

垃圾文件夹是一个虚拟文件夹,它应该是每个文件系统中这些目录的组合。

子卷是一个单独的文件系统。然而,实际上只检查挂载点(例如 中的那些)是否有垃圾目录。/etc/mtab不会搜索未单独安装的子卷。

至于解决方法,对于给定的子卷 SUBVOL,尝试:

ln -s /mnt/btrfs/.Trash /mnt/btrfs/SUBVOL/.Trash
ln -s /mnt/btrfs/.Trash-1000 /mnt/btrfs/SUBVOL/.Trash-1000
Run Code Online (Sandbox Code Playgroud)

将垃圾存储在父卷上不起作用。

但是两个符号链接(或只是同名的空文件)的存在会阻止创建垃圾目录,从而防止在该子卷上进行垃圾处理。