如何删除一个由root拥有但root却没有写权限的目录?

如何删除一个由root拥有但root却没有写权限的目录?

我创建了一个目录,并且该目录归。但我错误地删除了两者的写入权限用户和组。因此目前对该目录只有读取和执行权限。如下所示:

# ls -al
total 12
drwxr-xr-x 3 root root 4096 Mar 12 20:25 ./
drwxr-xr-x 3 root root 4096 Mar 12 19:59 ../
dr-xr-xr-x 2 root root 4096 Mar 10 23:28 empty/

空的目录是我想要删除的。但当然,它不能删除或更改模式。

# rm -r empty/
rm: cannot remove 'empty/': Operation not permitted`

# chmod u+w empty/
chmod: changing permissions of 'empty/': Operation not permitted

注意:除非您有足够的信心解决它,否则不要尝试。

答案1

使用以下命令修复了该问题:

chattr -i -a empty/
chmod ugo+w empty/

要了解原因,请查阅这些命令的文档。我猜您已使用 将此文件夹设为不可变chattr +i

具有不可变属性的文件不能被修改、删除或重命名。

只有 root(超级用户)或拥有 CAP_LINUX_IMMUTABLE 功能的进程可以设置或清除此属性。

相关内容