Unix 中无法删除的目录?

Unix 中无法删除的目录?

是否有可能即使作为 root 用户也无法删除目录?目录无法删除的情况有哪些?

文件系统没有问题。

系统上有应用程序完美运行。

尝试删除包含文件且不是挂载/只读的目录。

这是否与某人参考过它或正在使用但不确定有关?

我正在尝试从 shell 脚本执行此操作,但看不到错误消息,并且迫切需要摆脱这个目录。

答案1

各种可能性:

  • 文件系统以只读方式挂载
  • 不可变位集(系统特定)
  • 来自混乱的悲观主义:文件系统损坏
  • 来自 MarkR 的妙招:如果它不为空,你就不能删除它。用于ls -A检查隐藏文件...

答案2

NFS 通常排除 root 的所有写访问权(可以使用no_root_squashmount 选项启用(但不要不是除非您绝对信任网络上的所有机器,否则请这样做;NFS 有时被称为无文件安全性,并且默认情况下禁止 root 是有原因的)。

答案3

Linux 具有常规权限(读/写/执行)以及扩展属性,不太为人所知。

其中之一就是不可变的属性甚至可以阻止 root 修改文件。

不可变位设置为聊天 +i文件并取消设置chattr -i文件

另一个例子是附加属性只允许您附加到文件(不确定它如何与目录一起工作)

附加位设置为聊天 +a文件并取消设置chattr -i文件

答案4

对于rm包含某些内容的目录,您必须执行递归删除. 在我的 ArchLinux 机器上它将是$ rm -rf /path/to/dir

当心,非常小心。

$ rm -rf /你的系统和再见高清没有任何警告。

相关内容