删除文件至废纸篓

删除文件至废纸篓

Ubuntu 13.04 与预装的 Win 8 一起双启动。

我只能在主目录中删除文件到垃圾箱,即使是属于我的文件(通常在 /var/www 内)。在 nautilus 中选择文件并点击删除没有任何效果。右键单击并选择删除会询问我是否要永久删除。以下是我所知道的:

  1. 这些是我拥有的文件。/var 由 root 拥有,但 www(及其中的所有文件)归我拥有。
  2. 我在 /home/(name)/.local/share/Trash 有一个垃圾文件夹;对于我想要从主目录中删除的文件来说,它似乎工作得很好。
  3. 这台机器是一台 Win 8 机器,它让我在运行 Ubuntu 时遇到了很多麻烦;我不确定这是否是个问题。当我创建分区时,我单独创建了一个主分区,所以我认为这可能是我的问题。

这是我的文件系统

这篇博文看起来就像我遇到的确切问题,但我对 fstab 没有足够的经验来解决这个问题。我尝试将我的 UID 添加到 /:

UUID=bb3ada65-be09-4b18-b091-9b3c95534cfd / ext4 errors=remount-ro,uid=1000 0 1

但是当我重新启动时,fstab 无法加载,而且我在让系统重新加载时遇到了一些麻烦 —— 我真的不想尝试这个,因为尝试一些东西需要花费太多时间。

编辑:在阅读了 fstab 的手册之后,看起来 UID 是 fat 的一个选项;/是 ext3 所以我猜这不是问题。

编辑2:

我的权限似乎很好:

cd /var/www
touch test\ doc.txt
ls -la
...
-rw-rw-r--  1 tom  developers        0 Jun 12 16:55 test doc.txt
...
rm test\ doc.txt

请注意,我不需要 sudo 来从 cli 创建或删除文件,也不需要以 root 身份在 nautilus 中删除文件 - 我只是由于某种原因无法将其删除到垃圾箱。

答案1

当 nautilus 删除某些内容时,它不希望将其移动到不同的分区。这是因为在分区之间移动会花费很长时间,而且如果您删除分区,那么垃圾就没有地方可以恢复。

与您的主目录位于同一分区的任何地方都将发送到~/.local/share/Trash。这在只有一个分区的设置中适用于整个根分区。

在任何其他分区上,nautilus 都会.Trash-1000在分区的根目录下创建一个文件夹,然后将所有已删除的文件发送到该文件夹​​中。这在您拥有完全读/写访问权限的外部驱动器上非常有效,但如果您没有驱动器根目录的写入权限,则无法正常工作。

由于您的/分区与您的分区不同/home,并且.Trash-1000系统根目录中不存在具有写入权限的目录,因此 nautilus 将无法删除文件。因此删除键将不起作用,菜单中将无法使用删除操作。

您可以尝试使用 root nautilus 并删除一个文件,以便/.Trash-1000正确创建文件夹,然后使用sudo chmod -R 777 /.Trash-1000它授予自己访问/文件系统上的垃圾的权限。我无法确认这是否可行,但您可以尝试一下。

答案2

也许您可以尝试了解使用 Nemo 而不是 Natilus 时会发生什么。Nemo 是 Cinnamon 桌面的默认浏览器。除其他功能外,它还具有“直接”删除文件的功能,绕过垃圾箱。只需右键单击要删除的文件或文件夹,然后选择“删除”(而不是“移至垃圾箱”)。

我认为大多数用户都是通过将其作为 Cinnamon 的一部分进行安装来获得它的。但是,您可以使用以下方法轻松单独安装 Nemo:

sudo apt-get install nemo

然后,在终端中输入 nemo 即可打开 nemo。您也可以输入

nemo '/directory/subdirectory/subdirectory2/'

将 Nemo 启动到您希望的任何目录中。

如果这一切对您来说太复杂,您可能需要考虑从终端中删除。只需使用“rm(文件)”删除文件,或使用“rmdir(目录)”删除目录。或者,可能有某种方法可以将此选项添加到 Natilus,但我目前不知道如何实现这一点。

相关内容