如果从Cygwin运行,“ rm -rf /”会从Windows删除所有内容吗?

JDN

所以...我做得不好。在Cygwin中,我编写了一个bash脚本,该脚本包含两个目录,并将一个目录的内容复制到另一个目录中。首先,它调用“ rm -rf”以除去第二个目录的内容。我不小心在没有提供第二个参数的情况下运行了该脚本,看起来Cygwin将其视为可怕的“ rm -rf /”。

我不确定会造成什么损害,我正在尝试评估。在停止之前,它正在运行,我看到了很多“权限被拒绝”消息。

最明显的损坏是我的C:\ cygwin64文件夹被破坏了。剩下的只是几个空目录。我相信可能有一些目录按字母顺序在cygwin64上方被删除,因为我不记得它是列表中的最高目录,而现在是。

我的计算机100%正常运行,但是我还没有遇到过任何奇怪的事情。我只想知道是否有人在Cygwin上有过“ rm -rf /”的使用经验,是否像Linux上那样会破坏整个驱动器。

困惑的部分原因在于Cygwin的根在c驱动器之下,但是它在“ cygdrive”中包含对c驱动器的引用。我想知道“ rm -rf /”是否实际上会删除“ / cygdrive”的所有内容,或者是否受到某种保护。

编辑:在旁注,没有人知道为什么“ rm -rf”将与“ rm -rf /”相同。我清楚地记得没有提供路径并将该参数留为空白,所以我不知道为什么它在根目录上调用了rm。

JDN

编辑:命令完成,然后我重新启动了VM,所以我添加了更多照片。还更改了我的答案,以包括机器没有完全损坏的事实

编辑2:我仍然有VM。如果您有任何想让我出于好奇而尝试的内容,请在评论中让我知道。

编辑3:我决定做更多的实验。我还原到运行命令之前拍摄的快照,将一个文件夹放在上面C:\cygwin将一个文件夹放在下面。然后,我运行了命令,并ctrl-c很快完成了操作。cygwin文件夹仍然存在(在里面几乎是空的),但是上面的文件夹已被删除。用户生成的文件夹在它下面也完整无缺。然后,我恢复了状态,并再次运行了命令,这次是在更长的时间之前ctrl-c现在,它同时擦除了cygwin上方的文件夹,cygwin本身和下面的文件夹。

当我在现实生活中在计算机上运行此C:\cygwin64文件夹时,文件夹是完整的,这意味着文件夹下面的所有内容按字母顺序都是安全的。这使我有些安心,现在可以肯定地知道,唯一被吹除的文件夹是上述C:\cygwin64文件夹,它们通常只是临时文件夹或其他一些非必需的文件夹。

TLDR: 不运行rm -rf /*rm -rf /永远。

TLDR2: 我创建了Windows 10 VM,安装了Cygwin,然后运行rm -rf /*VM搞砸了。要回答我自己的问题:是的,它将删除它有权访问您的硬盘驱动器上的所有内容。如果我没有像在真机上那样快地取消命令,它将删除我的所有个人文件。通用操作系统仍将完好无损。

因此,我决定创建Windows 10 VM并从头开始尝试。这是发生了什么事。rm -rf /为了安全起见,Cygwin不允许您这样做(有一个覆盖选项)……但是rm -rf /*显然没有任何警告,这是完全可以的。

我意识到,在原始脚本中,我正在删除提供的目录中的所有文件,因此我使用rm -rf $1/*,所以如果$1为空...则执行了可怕的破坏您的硬盘驱动器命令,而Cygwin甚至不会警告您!

即将按下Enter键...

在此处输入图片说明

cygwin64是第一个被破坏的人

在此处输入图片说明

Windows资源管理器链接不见了

在此处输入图片说明

开始菜单仍在这里

在此处输入图片说明

桌面图像出现了!

在此处输入图片说明

通知中心还是可以的

在此处输入图片说明

小娜也!

在此处输入图片说明

回收站已损坏,但是现在我可以访问Windows资源管理器了!

在此处输入图片说明

C:驱动器内容,这里没有太大变化

在此处输入图片说明

常规用户界面仍然可以正常工作

在此处输入图片说明

开始菜单不再响应

在此处输入图片说明

音乐生活!这是唯一保留的图书馆

在此处输入图片说明

命令已完成!

在此处输入图片说明

C中没有太多新内容:

在此处输入图片说明

如果从可执行文件启动,应用程序仍然可以运行,但应用程序数据仍然完整

在此处输入图片说明

我重启了机器。引导和登录没有问题。如果单击程序的直接可执行文件,它们仍然可以工作。仍然可以上网。很难评估永久损坏。开始仍然无法打开。

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

解释rm ./-rf“技巧”

来自分类Dev

如何撤消rm -rf?

来自分类Dev

Difference between rm and rm -rf

来自分类Dev

恢复用git rm -rf删除的目录

来自分类Dev

rm -rf在Windows批处理脚本上等效

来自分类Dev

`sudo rm -rf /`被中断,数据被部分删除

来自分类Dev

rm -rf不是原子的吗?

来自分类Dev

最好使用本地运行的rm -rf而不是使用nfs?

来自分类Dev

rm -rf有多少危险?

来自分类Dev

如何撤消rm -rf?

来自分类Dev

为什么“ rm -rf ./”不删除任何内容?

来自分类Dev

我无法使用rm -rf删除目录树

来自分类Dev

rm -rf / var / macports安全吗?

来自分类Dev

删除了Sys文件(rm -rf / *)帮助

来自分类Dev

如何回显从rm -rf中删除的字节数?

来自分类Dev

“ rm -rf /”如何删除系统中的所有文件?

来自分类Dev

获取被rm -rf删除的文件的列表

来自分类Dev

以非root用户身份运行rm -rf / *后的分类帮助

来自分类Dev

rm -rf有什么作用?

来自分类Dev

rm -rf可以使用grep吗?

来自分类Dev

在Wubi上使用rm -rf恢复已删除的数据?

来自分类Dev

保护Dualbooting Windows免受危险代码(例如rm -rf)

来自分类Dev

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

来自分类Dev

“ rm -rf linux”有什么作用?

来自分类Dev

Sudo rm -rf不会删除非空文件夹

来自分类Dev

rm -rf *(1)* 有什么作用?

来自分类Dev

可以通过在 Ubuntu 上运行 `rm -rf /*` 来擦除外部硬盘驱动器的内容吗

来自分类Dev

“rm -rf”与“/*”有什么关系?

来自分类Dev

如果您运行“rm -rf /”,/media 会发生什么?