撤消“rm -rf ~”命令?

撤消“rm -rf ~”命令?

我有一个名为“~”的文件夹,我不想要,所以在命令行中我输入

rm -rf ~

并意外删除了我的主文件夹(因为 ~ 解析为 /home/username)。有什么办法可以恢复吗,还是我基本上需要从头开始重新创建帐户?

答案1

一般来说,没有简单的回归之路。

您可以从每日备份中恢复。

答案2

其他(例如@RiMMER@亚当, 和@詹姆斯 T) 提到,对于大多数文件系统,可以恢复大部分或全部数据(可能没有文件名),因为数据实际上并没有被清零,只是从文件表中删除。这不仅适用于 Linux - 同样适用于 Windows 和 Mac。

然而,没人提到最重要的一点——关掉你的电脑。现在。

许多程序(包括您现在使用的互联网浏览器)都会将数据缓存到硬盘中,而且您所做的几乎任何事情都可能导致您的计算机调整大小/写入交换文件。这两项操作都会写入硬盘上的空闲扇区,可能会覆盖您的宝贵数据。

因此,关闭计算机,取出硬盘,并将其放入另一台计算机。将硬盘安装为只读,并将文件恢复到单独的硬盘上。当您恢复了所有您感兴趣的内容后 - 并且仅有的然后 - 将文件写回原始驱动器。

答案3

我相信每一个Linux用户在某个时刻都必须亲身学习这个惨痛的教训,然后才能真正了解备份的重要性,以及注重细节和小心谨慎。

例如,如果您要删除看起来奇怪的文件,您可以先对该奇怪的文件运行没有副作用且不会更改数据的命令。例如,如果您运行

cd ~

在尝试删除文件夹之前,您会看到它会将目录更改为您的主文件夹,而不是文件~夹。一旦您完成足够的故障排除步骤以了解您需要的真正命令,您就可以正确地cd进入~文件夹,然后您可以按向上箭头键从历史记录中提取最后一个命令,然后更改cdrm然后,只有然后尝试删除该文件夹。

我建议在表演之前采取这样的步骤任何永久性操作。它不是永久性的或万无一失的,但如果您在执行有副作用的操作时如此小心谨慎,您就有更好的机会避免这些意外情况。

答案4

如果你使用的是 ext3 文件系统,那么ext3grep是你最好的新朋友。你可以找到一个关于使用 ext3grep 的优秀教程(还有许多其他教程)这里

相关内容