故事:
我的网站使用的是 Ubuntu。
为了制定备份计划,我编写了一个脚本。我想每晚安装一个外部驱动器(通过 crontab 运行),备份服务器,然后卸载它。我注意到通过 fdisk -l 我得到了:
/dev/sda
/dev/sdb
为了确定,我弹出了外部驱动器,然后看到了以下内容:
/dev/sda
我假设 /dev/sda 是我的服务器磁盘。
然后我插入外部设备。创建并/mnt/GBackup_plan
挂载了一个目录:
挂载 /dev/sdb1 /mnt/GBackup_plan
然后事情发生了。
我希望外部干净...
然后我运行命令:
rm -r *
我全部在 GNOME 中完成,然后我发现环境开始失去稳定性,直到那时我才意识到我犯了一个可怕的错误,尽管我仍然不知道为什么......(sdb 是外部的,不是吗?!)
因为这个错误,我所有的备份,所有内容实际上都不在外部,而是在原始磁盘上......
原来我删除了服务器的根目录!!!
我运行了 Hiren 的启动 CD,使用TestDisk
,并检查了文件系统,我可以看到文件系统的根目录,但是当我进入文件夹时,它们是空的。也许我应该在列出/复制之前再做一步?也许可以分析一下?
我希望有人知道我应该怎么做。
我应该说我使用 ctrl+c 停止了命令并关闭了计算机。取出磁盘。
任何帮助,将不胜感激!!!
答案1
您的数据很有可能无法恢复。不过,Ubuntu 实际上提供了一个数据恢复指南针对您这样的情况。本文详细介绍了这一点,但总体思路如下:
制作磁盘映像
这很关键。您需要制作磁盘的逐位副本以供使用;如果恢复过程在映像上出现问题,您将丢失该映像 - 需要创建另一个。在磁盘上工作时,错误是不可避免的。我实际上建议制作映像、复制它,然后处理副本。
分类
看看它有多糟糕。指南建议侦探工具/尸检。我没有更好的建议。Hiren 的工具可能就足够了。
恢复
开始恢复过程。根据这篇相当权威的文章如果你够幸运,你也许可以一次性恢复所有文件。如果你还算幸运,你可以单独恢复文件。如果你真的不走运,那么... 是啊。
下次
- 切勿
rm
以 root 身份使用通配符运行且未指定绝对路径。 rm
在没有当前备份的情况下,切勿以 root 身份使用通配符运行。- 始终检查您的
pwd