为什么甚至允许可怕的'rm -rf /'? [关闭]

Modified on: Sat, 26 Jan 2019 01:00:02 +0800

我们都知道以root身份执行以下命令的破坏力:

rm -rf /

相关问题:

我没有看到这个特定的参数组合何时有用,因为它会破坏整个系统,并且有更有效的方法可以做到这一点。 rm命令可以检查这些特定参数,并实现某种安全措施 - 尽管有-f参数,但至少要求确认。

为什么rm命令中没有这样的安全措施?

我很清楚在以root身份执行命令时必须格外小心。 拥有强大的力量(...)。但是,这个特定情况不应该是该规则的例外吗?

最佳答案

这取决于分布。我现在使用的旧Linux允许它(我认为,虽然没有测试它:-))并且在man rm中声明:

   --no-preserve-root do not treat '/' specially (the default)

   --preserve-root
          fail to operate recursively on '/'

在许多最近的发行版中,您需要显式添加--no-preserve-root来禁用安全措施。否则它将无法执行。

关于Ubuntu,请参阅此问题,此行为是讨论


根据维基百科提供此保护的历史记录:< / p>

  

Sun Microsystems在2005年首次发布的Solaris 10中引入了rm -rf /保护。执行命令后,系统现在报告/的删除不是允许。不久之后,FreeBSD版本的rm实用程序引入了相同的功能。如果给出rm选项,则GNU rm -rf /拒绝执行--preserve-root,这是自6.4版本以来的默认选项GNU Core Utilities于2006年发布。

作者:,Daniel Beck

相关问答

添加新评论