無法刪除 btrfs 上的目錄

無法刪除 btrfs 上的目錄

btrfs 檔案系統上有一個名為「????????? ??????」 的對象這可能是一些未正確刪除或複製的暫存檔案或目錄。且無法使用常用指令刪除:rm、rm -d:

[root@localhost sessions]# rm -d \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
rm: cannot remove ‘????????? ??????/’: Directory not empty
[root@localhost sessions]# rm -dr \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
rm: descend into directory ‘????????? ??????/’? y
rm: remove directory ‘????????? ??????/’? y
rm: cannot remove ‘????????? ??????/’: No such file or directory
[root@localhost sessions]# rm \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
rm: cannot remove ‘????????? ??????/’: Is a directory
[root@localhost sessions]# file \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
????????? ??????/: directory

這樣的物件該如何刪除呢?

更新:作業系統和外殼:

Linux 4.0.4-2-ARCH #1 SMP 搶佔 5 月 22 日星期五 03:19:32 UTC 2015 i686 GNU/Linux

GNU bash,版本 4.3.39(1)-release (i686-pc-linux-gnu)

更新2:

[root@localhost sessions]# rm -fr \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
[root@localhost sessions]# ls
????????? ??????   backup-9.session
[root@localhost sessions]# lsattr \?\?\?\?\?\?\?\?\?\ \?\?\?\?\?\?/
[root@localhost sessions]# 

更新3:

[root@localhost sessions]# echo $LANG
en_US.UTF-8
[root@localhost sessions]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

更新4:

[root@localhost sessions]# ls -la
ls: ????????? ??????: No such file or directory
total 23760
drwxr-xr-x 1 al users       0 Aug 13  2014 ????????? ??????
drwxr-xr-x 1 al users       0 Jun  7 05:53 .
drwx------ 1 al users       0 Jun  8 05:06 ..
-rw-r--r-- 1 al users  274557 May 24 18:58 backup-11.session

更新5:

[root@localhost sessions]# find . -exec rm -fr {} \;
rm: refusing to remove ‘.’ or ‘..’ directory: skipping ‘.’
[root@localhost sessions]# ls -la
ls: ????????? ??????: No such file or directory
total 0
drwxr-xr-x 1 al users 0 Aug 13  2014 ????????? ??????
drwxr-xr-x 1 al users 0 Jun  8 17:03 .
drwx------ 1 al users 0 Jun  8 05:06 ..
[root@localhost sessions]# 

答案1

重建整個分割區的校驗和後,再次執行scrub 和 --repair - 垃圾檔案系統條目終於消失了。

答案2

請嘗試按如下方式運行:

rm -fr <directory>

也可以使用 檢查屬性lsattr,如果需要可以使用chattr來變更屬性,請參閱對應的手冊頁。

相關內容