我试图删除一些目录,但是
$ rm DE.aspx_files -r
rm: cannot remove `DE.aspx_files': Directory not empty
Run Code Online (Sandbox Code Playgroud)
但列出其内容返回无
$ ls DE.aspx_files
$
Run Code Online (Sandbox Code Playgroud)
补充:其实
$ ls -la DE.aspx_files
total 4
drwx------ 1 ting ting 4096 Sep 14 20:48 .
drwx------ 1 ting ting 0 Sep 13 22:34 ..
-rw------- 1 ting ting 0 Sep 13 22:34 .fuse_hidden0001d4bf00000006
Run Code Online (Sandbox Code Playgroud)
当我尝试时rm .fuse_hidden0001d4bf00000006
,它被删除,但另一个新.fuse_hidden0001d4bf00000007
创建。
所以我想知道发生了什么,以及如何解决这个问题?
注意:这是一个新买的外置移动硬盘,我只是使用数据恢复程序将一些文件复制到其中。
操作系统:Ubuntu 12.04
谢谢!
Gil*_*il' 72
当文件被删除但仍在某处使用并且必须仍然具有目录条目时,该形式的文件.fuse_hidden*
由FUSE文件系统创建。这类似于.nfs*
通过NFS导出的目录上的文件。
运行df -T .
以查看当前目录上挂载的文件系统类型及其挂载点。对于外部硬盘,可能是通过基于 FUSE的NTFS-3G驱动程序挂载的 NTFS 文件系统。
该名称是文件系统驱动程序为已删除文件创建的假名称。您无法删除该文件(或者更确切地说,如果您创建了该文件,它会以另一个名称重新出现)。您也不能删除该目录,因为它不是空的。您需要找到使用此文件的内容。被使用的最可能原因是它是否被某个应用程序打开。运行lsof /media/mount-point
where /media/mount-point
is the filesystem mount point 并在该目录中查找打开的文件。
Cod*_*ome 21
您可能有隐藏文件。您可以找到它们ls -la
以确保您可以先真正删除它们。然后您可以在运行前rm -r
或rmdir
根据需要删除文件。
rm -rf
即使目标目录包含文件,您也可以强制执行递归删除。所有通常的警告都适用,但无论您的目录包含什么,它都会完成工作——当然,只要您有删除文件和目录的权限。
小智 19
对于外部硬盘,可以通过以下方式解决此问题,
Move to Trash
即使rm -rf
不起作用,它也对我有用。