Directory
“無法刪除‘some_directory’:目錄不為空”
我試圖刪除一些目錄,但是
$ rm DE.aspx_files -r rm: cannot remove `DE.aspx_files': Directory not empty
但列出其內容不會返回
$ ls DE.aspx_files $
**補充:**其實
$ 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
當我嘗試時
rm .fuse_hidden0001d4bf00000006
,它被刪除,但另一個新.fuse_hidden0001d4bf00000007
創建。所以我想知道發生了什麼,以及如何解決這個問題?
注意:這是一個新買的外置攜帶式硬碟,我只是使用數據恢復程序將一些文件複製到它。
作業系統:Ubuntu 12.04
謝謝!
當文件被刪除但仍在某處使用並且必須仍然具有目錄條目時, FUSE
.fuse_hidden*
文件系統會創建這種形式的文件。這類似於通過NFS導出的目錄上的文件。.nfs*
執行
df -T .
以查看目前目錄上掛載的文件系統類型及其掛載點。對於外部硬碟,很可能這是通過基於 FUSE的NTFS-3G驅動程序安裝的 NTFS 文件系統。該名稱是文件系統驅動程序為已刪除文件發明的假名稱。您不能刪除該文件(或者更確切地說,如果您創建該文件,它會以另一個名稱重新出現)。您也不能刪除該目錄,因為它不是空的。您需要找到正在使用此文件的內容。被使用的最可能原因是它是否被某些應用程序打開。執行
lsof /media/mount-point
where/media/mount-point
is the filesystem mount point 並在該目錄中查找打開的文件。
對於外部硬碟,可以通過以下方式解決此問題,
- 右鍵點擊文件夾並選擇
Move to Trash
- 清空垃圾
即使
rm -rf
沒有用,它也對我有用。