垃圾:无法丢弃常规文件

垃圾:无法丢弃常规文件

我尽量避免使用,rm这样就不会永久删除任何内容。我正在使用实用功能trash,但它一直告诉我trash: cannot trash regular file。为什么我不能删除这些文件?例如,它们是我在程序中创建的 csv 文件。

$ ls -l | grep filename
-rw-rw-r--  1 username usergroup 298025 Sep 23 02:33 filename.csv

使用标志运行它-v可得到:

trash: found unusable .Trash dir (should be a dir): /.Trash
trash: Failed to trash filename.csv in /.Trash/1005, because :[Errno 13] Permission denied: '/.Trash'
trash: Failed to trash filename.csv in /.Trash-1005, because :[Errno 13] Permission denied: '/.Trash-1005'
trash: cannot trash regular file `filename.csv'

我还注意到了另一个功能。我试图trash从不属于我的目录中获取文件。但如果我mv将文件复制到~,我可以trash在那里成功获取。

答案1

GNOMEish 文件管理器需要一个地方来放置废弃的文件。

  • 您的“主”分区上已删除的文件转到: /home/$USER/.local/share/Trash
  • 出于性能和空间原因,其他分区上已删除的文件无法复制到“主目录”。

因此它会尝试将它们放入/[partition mount]/.Trash-$UID文件夹中。如果没有对该文件夹的读写权限,就不会有垃圾。

以需要垃圾的用户身份在分区根目录中运行此 bash。

sudo mkdir .Trash-$UID && sudo chown $USER:$USER .Trash-$UID

您可以删除此文件夹并保护分区/以禁用该功能。

sudo rm -rf /[partition mount]/.Trash-xxxx
sodo chown root:root /[partition mount]/

答案2

看起来您正在尝试删除您没有写权限的目录中的文件。您无法执行此操作。查看您收到的错误:

trash: Failed to trash filename.csv in /.Trash/1005, because :[Errno 13] Permission denied: '/.Trash'

您要么 i) 没有权限写入包含该文件的目录(您需要执行此操作才能从中删除文件)和/或 ii) 没有权限写入,./.Trash因为它不是您的目录。

答案3

我通过.Trash在所有挂载点的根目录中创建一个文件夹(可以通过df命令看到)来修复它,而不仅仅是home文件夹。

相关内容