一个Ubuntu命令阻止了我的系统?

几天前我刚刚在我的电脑上安装了Ubuntu来运行独家程序。 我完成了它,我即将格式化驱动器以重新安装Windows。 但是,我的小弟弟想在终端上运行这个命令会破坏操作系统,我认为这样做不会受到伤害,因为无论如何我都会格式化驱动器。

就是这样:

sudo rm -rf --no-preserve-root / 

如果这个命令应该结束世界或某事,请原谅我的高傲。 所以它搞砸了操作系统,我用Windows安装USB重新启动了PC,计划在Windows安装程序中格式化驱动器。

但是,重新启动时,监视器根本没有接收任何输入。 此外,硬盘指示灯(或任何红灯是)没有做一件事。 (事实上​​,它已经关闭了。)但是粉丝们正在工作,DVD驱动器也是如此。 (我不认为那里有一个PC扬声器,所以如果你需要一些哔声错误代码,抱歉。)

我尝试将VGA线从显卡切换到主板,但我仍然没有输入。 我尝试将这个旧的Windows XP磁盘插入磁盘驱动器,但没有任何显示。 删除了删除,F12等按钮,但没有任何反应。 然后我在网上看了一下并尝试了重置RAM的建议,但没有任何改变。 我正在考虑手动重置CMOS,但还没有完成。 (请告诉我你是否会建议这样做,因为如果我不需要,我不想搞砸PC。)

我有UEFI,所以我可以使用备份芯片,以防BIOS损坏。

这在运行systemd的UEFI系统上是可能的。

  • Phoronix:在UEFI世界中,“rm -rf /”可以阻止你的系统
  • 系统错误报告 ,该文章的来源

总结一下,引用该错误报告中的评论 :

第1点:
删除/sys/firmware/efi/efivars/应该会/sys/firmware/efi/efivars/您的EFI配置,但在正确实施的EFI中,这应该是可恢复的。

第2点:
有一些硬件在那里有破坏/执行不佳的EFI,它们可以通过对它们做标准符合的东西来永久地砖砌。 例如,看看Ubuntu通过在一些EFI内存中存储额外数据来阻止一些三星笔记本电脑的情况。 这种行为在标准中很好,但打破了这个特定的实现。

第3点:
以root身份运行写入/dev/sda任何内容都将破坏您的分区表和/或文件系统。 这很糟糕,特别是如果你没有备份,但在分区,创建新文件系统和重新安装操作系统后,你的机器将再次运行。 因此,您可以通过引导其他媒体并重做您的安装来从中恢复。

第4点:
捶打你的EFI是一个完全不同的问题。 在最坏的情况下,您将无法对机器执行任何操作,因为它无法进行POST。 无法从其他媒体启动,没有进入某些EFI实用程序来修复丢失的东西。 那点你的电脑是一个非常昂贵的纸镇。

在运行systemd和mount efivarfs writeable(在/sys/firmware/efi/efivars )的发行版中会出现此问题。 Systemd需要在那里写,因此使用systemd的分发会受到影响。 但是,似乎没有迹象表明Upstart系统受到影响。

运行命令rm -rf /可以阻止任何UEFI设备(包括我输入的设备)。 这样做会删除包含已安装驱动器和EFI固件变量的所有文件(这就是砖块)。 Linux在/sys/firmware/efi/efivars/安装EFI变量, rm -rf /将删除该文件夹中的所有文件(EFI变量)。 您的计算机很可能是砖块,无法修复(EFI使用NVRAM )。

旧的BIOS计算机不适用于rm -rf / ,因为它们没有可以删除的EFI固件变量。 此外,可以使用几行代码在Windows上执行相同的操作(删除所有EFI变量)。

通常情况下,删除文件无法破坏驱动器(请参阅我的编辑结果 – 显然,有一种方法)。 该命令与在Windows命令行中输入del -sc:*。*相同(如果我的DOS语法内存正确)。 当然,删除操作系统会导致操作系统失败,但仅此而已。

如果删除引导目录以及其他任何内容,甚至是整个分区,您仍应该实际获得GRUB提示。 GRUB引导加载程序不会被删除,因为它不是目录结构的一部分,但它的菜单是,所以它应该仍然尝试加载并给出错误。

你还有其他一些问题,它与Ubuntu无关。 即使磁盘发生故障,也不会影响USB或DVD启动过程。

编辑:好的,我认为由于UEFI BIOS,我的答案已经过时,这是我所知甚少的。 显然,可以删除关键的UEFI配置信息。 我相信会发生这种情况,这会被安装到文件系统上,如果操作不正确,将不会被只读,并且可以被删除,从而从BIOS中删除它。

我有过这样的经验:如果您的HD使用Windows不知道的格式(如ext4),Windows Installer媒体可能会挂起。

在这种情况下,您应该运行带有GParted的Linux LiveCD( 如此 ),并在尝试安装Windows之前将硬盘驱动器格式化为NTFS或FAT32。

这里的主要问题是文件系统可以跨设备。 这包括安装的任何东西 这是UEFI的问题。 哎呀,这对Android来说是一个问题。 如果你有一个安装的摄像头,比如说你也删除了你的DCIM内容,对吧? 那么,你学到了什么? 制造商可能能够为您提供帮助,您也可以通过其他方式进行闪存。

下次使用dd if = / dev / zero擦除磁盘,并且轻率地删除一些东西会在某一天回来咬你。 一切都会以泪水结束。 你实际上可以腾出时间来哄骗这样的人,这比del更糟糕 在根目录MS-DOS PC中。