Permissions
無法刪除文件,即使以 root 身份執行
我正在將一台機器從 RHEL 4 遷移到 5。我們沒有實際進行升級,而是創建了一個新的 VM(兩台機器都在雲中),並且我正在兩者之間複製數據。
我遇到了以下文件,我需要將其從新機器中刪除,但無法刪除,即使以 root 身份執行:
-rw------- 1 2003 2003 219 jan 11 14:22 .bash_history
該文件位於 /home/USER/ 中,其中 USER 是製造機器的人的帳戶。他在舊機器上沒有帳戶,所以我試圖刪除他的主文件夾,以便新機器與舊機器相符,但我收到以下錯誤:
rm: ne peut enlever `.bash_history': Opération non permise
(翻譯自法語:cannot remove XXX, operation not allowed)
我曾嘗試使用以下命令,但這沒有任何區別:
chattr -i .bash_history
是創建 ID 為 2003 的使用者的唯一選擇,還是有其他方法?
編輯
我試過使用
rm -f
,我得到了同樣的錯誤。我首先使用相同類型的錯誤chmod 777
。我已經能夠
chown
包含我要刪除的文件的文件夾,所以它是:drwx------ 2 root root 1024 jan 24 15:58 USER
編輯2
按照 Angus 的建議執行
lsattr
命令會得到以下輸出:-----a------- USER/.bash_history ------------- USER/.. ------------- USER/.
該文件被標記為僅附加 - 在使用更改此標誌時,
chattr -a .bash_history
我能夠刪除該文件。
檢查目錄的權限。要刪除其中的文件,它應該是您可寫的
chmod ugo+w .
並且不是不可變的或僅附加的:
chattr -i -a .
用
ls -la
和檢查lsattr -a
。
我遇到了類似的問題,但之前嘗試過權限和 chattr 都無濟於事。植根於終端。CD 到目錄。
但是,對我有用的是檢查麻煩文件所在目錄的權限-如果可以,請繼續:
chmod ugo+w filename
這失敗了 - 然後:
chattr -i -a filename
被接受了-然後
chmod ugo+w
被接受了
rm filename
它消失了。
惠普工作站上的 Fedora 25。