Linux 在 rm -rf --no-preserve-root / 后保持运行

Linux 在 rm -rf --no-preserve-root / 后保持运行

我已经完成了搜索,但找不到任何答案。

执行后“rm --no-preserve-root -rf /”,bash 告诉我这样的事情:

  • rm:无法删除/proc/*:不允许操作 ...
  • rm:无法删除/etc:设备或资源繁忙 ...

首先,由于所有文件都被删除,操作显然已成功完成。如果是这样,为什么会说这样的话呢?

其次,当内核(更像是所有东西)消失时,我如何仍然可以在我的虚拟 CentOS 机器上运行。是否有任何类型的会话可以让计算机继续运行?

第三,系统把我扔到“/“目录最后。当我打电话时”ll-a“,”没有这样的文件或目录”。但是如果我打电话“光盘/等“,bash 让我去那里(!?)。我什至打电话给”光盘 ..“然后回到”/”。

我认为这些与硬链接和索引节点有关,但我还没有找到任何明确的解释。

我不想成为一个没有见过光明的“luser”(Machtelt Garrels P.9 的 Linux 简介):(

答案1

由于您看到的错误消息所示的各种原因,某些文件和目录未被删除。/proc内容无法删除;并且任何繁忙的目录也无法删除。但是,您的系统的大部分内容都被删除了,包括等中的所有命令/bin/usr/bin

系统会继续运行,因为 Linux 与其他 Unix 风格的系统一样,只要任何进程打开文件和目录,就会保留它们。删除正在使用的文件会将其从目录中删除,因此它不再可见,但任何已经使用它的进程都可以继续访问它。

运行ll -a会产生错误,不是因为没有文件,而是因为ls不再可以运行。要查看哪些文件仍然存在,请运行echo *;这是由外壳处理的,并将继续工作,因为cd这显然仍然对您有用。

相关内容