Could not remove the folder [Folder name].
Show more details
Error removing file: Directory not empty
Cancel-Skip All-Skip
我尝试使用以下命令从终端删除这些文件夹:
rm -r
答案1
你试过吗sudo rm -r
?有哪些类型的文件?你也可以先删除所有文件,然后删除文件夹。这是额外的工作,但有时为了完成工作还是值得的。
sudo
用于超级用户操作。
答案2
尝试cd
进入目录,然后使用 删除所有文件rm -rf *
。然后尝试退出目录并使用rmdir
删除目录。
答案3
我在 btrfs 文件系统上的一个文件夹中遇到了这个问题。检查挂载点和 lsof 是正常现象。在我的例子中,这是由一个旧错误导致的损坏,已修复:
要检查的正常事项:
- lsof +D <路径>- 这会升我s高的o笔Files。您无法删除包含打开文件的文件夹,尽管这通常也会导致略有不同的错误:“设备或资源繁忙”。请注意,如果您省略“+D <path>”,lsof 将显示所有文件系统上所有文件夹的列表 - 这会浪费时间。;)
- 山:这将向您显示当前挂载的文件系统。您无法删除当前挂载的挂载点或其父文件夹。
- btrfs 子列表 <路径>:与挂载点类似,您无法删除 btrfs 子卷,除非使用 btrfs 特定命令:btrfs 子卷删除 <路径>。
腐败解决方法
如果损坏无法轻易修复,基本解决方法是备份、格式化文件系统,然后恢复(保留坏数据)。根据文件系统中的数据量,这可能是一件苦差事。:-/
在我的情况下,问题文件夹位于子卷内,因此我可以执行上述操作,但只需删除子卷而不是整个文件系统。我备份了我的数据并删除了子卷:btrfs sub del <子卷路径>。然后我能够将其恢复到一个新的子卷中,而省去问题文件夹。
i_size 损坏
我的情况被认定是腐败i_size,其中它不为零。Btrfs 使用 i_size 来判断文件夹是否为空。要检查这一点,请运行:
stat -c %s <foldername>
btrfs 中空文件夹的 i_size 应为零。在 ext 中,它通常为 4k。
相关链接:
https://btrfs.wiki.kernel.org/index.php/Problem_FAQ#I_cannot_delete_an_empty_directory
答案4
转到要删除的文件夹之前的文件夹,然后执行此命令,将文件夹名称更改为文件夹名称:rm -rf foldername
R 表示递归,f 表示力量。