我正在将一台机器从 RHEL 4 迁移到 5。我们没有进行实际升级,而是创建了一个新的 VM(两台机器都在云中),我正在两者之间复制数据。
我遇到了以下文件,我需要将其从新机器中删除,但无法删除,即使以 root 身份运行:
-rw------- 1 2003 2003 219 jan 11 14:22 .bash_history
Run Code Online (Sandbox Code Playgroud)
该文件位于 /home/USER/ 中,其中 USER 是构建机器的人的帐户。他在旧机器上没有帐户,所以我试图删除他的主文件夹,以便新机器与旧机器相符,但出现以下错误:
rm: ne peut enlever `.bash_history': Opération non permise
Run Code Online (Sandbox Code Playgroud)
(法文翻译:不能删除XXX,不允许操作)
我曾尝试使用以下命令,但这没有任何区别:
chattr -i .bash_history
Run Code Online (Sandbox Code Playgroud)
是创建 ID 为 2003 的用户的唯一选择,还是有其他解决方法?
我试过使用rm -f
,我得到了同样的错误。我chmod 777
首先使用相同类型的错误。
我已经能够访问chown
包含我要删除的文件的文件夹,所以它是:
drwx------ 2 root root 1024 jan 24 15:58 USER
Run Code Online (Sandbox Code Playgroud)
lsattr
按照 Angus 的建议运行命令给出了以下输出:
-----a------- USER/.bash_history
------------- USER/..
------------- USER/.
Run Code Online (Sandbox Code Playgroud)
该文件被标记为仅附加 - 在使用更改此标志时,chattr -a .bash_history
我能够删除该文件。
我有 2 个文件的目录考试。我需要删除文件但权限被拒绝。即使rm -rf
命令也无法删除这些文件。我以 root 用户身份登录。