我的主目錄中有一個目錄,但我無法以任何方式刪除它。
使用 rm -rf JsZ-r6K.50/ 會使 konsole 崩潰。我也嘗試過使用 sudo rm,但還是一樣。
drwxr-xr-x 3 volkan volkan 4096 Nov 5 03:19 .installjammerinfo/
drwxrwxr-x 4 volkan volkan 4096 Aug 6 15:28 .java/
drwxr-xr-x 2 volkan volkan 86122496 Nov 8 22:25 JsZ-r6K.50/
drwx------ 5 volkan volkan 4096 Nov 8 02:58 .kde/
我怎麼才能刪除這個目錄?
編輯:
volkan@ubuntu:~$ lsattr -d JsZ*
----------I--e-- JsZ-r6K.50
編輯 OmP:
我將檔案移到 /var/tmp/newname 中,但我也無法從那裡刪除它。以下命令也失敗了,它們凍結了控制台。
只有lsof
命令給了以下內容:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 3935 volkan cwd DIR 8,6 86122496 914129 new
rm 4177 volkan 3r DIR 8,6 86122496 914129 new
rm 4177 volkan 4r DIR 8,6 86122496 914129 new
答案1
警告,以下內容非常危險,請先備份資料:
您可能有一個腳本運行到該資料夾中...(您的 lsof 顯示 bash 命令)
確保已退出該資料夾並具有管理權限(sudo 或 root。)
殺死所有可能存取該資料夾的進程:
kill -9 `lsof -t /MyFolder`
然後你就可以刪除它:
rm -rf /MyFolder
MyFolder 是您要刪除的資料夾。
如果不起作用,請向我們展示 mount 指令的輸出內容
此致。
答案2
這真的很奇怪——它似乎是一個損壞的條目(連結計數非常非常可疑)。我要做的是首先,備份然後嘗試在下次重新啟動時強制檢查磁碟。
請注意,如果您懷疑這可能是磁碟損壞,則備份分割區中的所有資料非常重要。
若要強制在下次重新啟動時檢查檔案系統,請先識別設備;從目錄中,df .
,會說這樣的話:
(0)samsung-romano:~% df .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda6 503315720 140840260 336901780 30% /home
所以設備是/dev/sda6。現在強制在下次重新啟動時進行檢查。有多種方法可以做到這一點,我通常使用的是在設備上強制高安裝計數,例如
sudo tune2fs -c 100 /dev/sda6
sudo tune2fs -C 100 /dev/sda6
第一個表示每 100 次掛載檢查一次設備上的檔案系統,第二個將掛載計數設定為 100,因此下次啟動時將進行檢查。
最有可能的是,檢查將檢測到它並將其刪除/移動到lost+found
檔案系統根目錄中的目錄(在我的情況下是/home/lost+found/
)。通常可以從那裡將其刪除。
答案3
我建議嘗試將其移動到其他位置。
mv /path/to/filename /var/tmp/newname
如果這有效,我認為你已經完成了,並且可以將其從那裡刪除。
也嘗試做一個
file /path/to/filename
這應該告訴您它是什麼類型的文件。如果沒有任何效果。嘗試
cp /dev/null /path/to/filename
rm /path/to/filename
這將使檔案的大小為 0 字節,然後您可以輕鬆刪除它。
檢查為什麼刪除此檔案會使您的終端崩潰。
lsof /path/to/filename
這將列出系統上使用該檔案的所有進程。您可以停止這些進程並刪除,然後再次嘗試刪除該檔案。