当试图从已挂载的NTFS卷管理垃圾箱时,我最终阅读了FreeDesktop.org的参考资料。
反复研究并做一些测试,我意识到Ubuntu / Gnome没有100%遵循规范。原因如下:
对于非/分区,即使我预先创建它,也始终使用
<driveroot>/.Trash-<uid>
,从未使用<driveroot>/.Trash/<uid>
过。虽然这样做有效,但很烦人:如果我有15个用户,则最终/.Trash-xxx
在驱动器中只有15个文件夹,而另一种方法仍然会给出一个文件夹(包含15个子文件夹)。我的驱动器中的“污染”是非常不愉快的。规格说明为“ 如果没有$topdir/.Trash
目录,则使用$topdir/.Trash-$uid
目录 ”。好吧,它存在了,那么为什么不使用它呢?根垃圾确实没有工作,至少不能开箱即用。以根用户身份打开鹦鹉螺,然后单击垃圾箱;它给出了一个错误。尝试删除任何文件,并说“它不能移到回收站”。好的,我知道可以通过创建来解决此问题
/root/.local/share
。但是规范说:“ 应该为任何新用户自动创建一个“家庭垃圾箱”目录。如果该目录是垃圾箱操作所需的目录,但该目录不存在,则实现应自动创建该目录,而不会发出任何警告或延迟。为什么会出错呢?虫子?/etc/fstab
如果每个人的卷都已经作为RW挂载,为什么还要更改挂载卷的条目并添加uid和guid之类的选项?
这些只是偏离标准的一些示例。因此,问题是:
“如果Ubuntu的不坚持100%的规范,如何准确不垃圾的工作?我在哪里可以找到Ubuntu的实施垃圾的技术参考?”
顺便说一句:如果Ubuntu确实符合规范,请告诉我我做错了什么,尤其是在/.Trash-<uid>
vs /.Trash/<uid>
问题上。
谢谢!
编辑:
更多信息:
如果给定的fs不支持粘性位(VFAT,NTFS),则它可能也没有权限(至少VFAT当然没有)。那么,是什么阻止了一个用户清除
/
其他用户的数据./Trash-xxx
呢?如果一个人可以读/写自己的垃圾桶,那么对整个驱动器(包括其他人的垃圾桶)也可以这样做,对吗?还是Gnome./Trash-xxx
在VFAT / NTFS fs 上的文件夹上有某种“额外”保护?如果Linux可以通过编辑
/fstab
uid和gid选项“模拟” NTFS挂载的文件权限,那么它也可以“模拟”粘性位吗?我真的更喜欢使用/.Trash/xxx
格式...对于根问题:对于/分区,我可以将垃圾桶用作根,然后转到
/root/.local/share/Trash
。但是,如果我单击Nautilus“ Trash”(以root用户身份),则会收到错误消息。是不是 因此文件已正确删除,但我无法访问它。我所能做的就是手动“清除”它们(通过删除上的文件/root/.local/share/Trash
),但是还原将非常棘手(打开信息文件并手动移动等)。对于非/分区(或至少对于VFAT / NTFS),我什至不能使用垃圾桶作为根:它不创建
./Trash-0
文件夹,只是说“不能垃圾桶,要永久删除?” 为什么?关于fstab:我将其用于NTFS分区的永久挂载。我有几个,如果没有“预装”的话,它们真的会使桌面和/或Nautilus杂乱无章。我宁愿把它预先安装,集成在我的文件系统,像坐骑
/data
,/windows/xp
,/windows/vista
,等等,并留下/media
其“挂载/卸载”灵活性只为真正的可移动驱动器。
因此,如果Ubuntu / Gnome确实遵循规范,是否有任何方法可以解决根本问题并“模拟”(至少)我的fstab的NTFS固定分区的粘性位?