我有一台专用服务器。我一直在开发一款应用来处理我的音乐收藏,过去我曾为我的代码设置了备份解决方案,但我将 /music 文件夹列入了黑名单。最糟糕的事情发生了,我意外地使用 unlink 和 rmdir php 函数递归删除了该文件夹。里面有大约 50GB 的数据,包括 .mp3、.ogg 和 .m4a。
我知道有解决方案,例如 foremost、scalpel、photorec、extundelete 可以恢复已删除的数据。
最主要的是,我的问题是数据所在的分区 /dev/sda2 是 897Gb,而系统分区只有 20Gb。我询问了我的系统提供商 OVH,我是否可以通过另一个 DD 或 USB 驱动器添加更多空间,但这是不可能的。我还询问我是否可以付费复制整个磁盘,但这也是不可能的。
我正在考虑三种可能的解决方案:
使用其中一个程序并复制到 / 中的可用空间,并执行多次,每次我都会将当前恢复的数据 scp 到我拥有的另一台服务器。
其他解决方案是制作分区的图像并逐步将其 scp 到第二台服务器(我真的不知道是否可行)
第三种解决方案是重新分区 /home sda2 主分区,但我担心这会损坏/擦除/覆盖尚未恢复的数据。
在这种特殊情况下我该怎么做才能恢复我的数据?
答案1
使用其中一个程序并复制到 / 中的可用空间,并执行多次,每次我都会将当前恢复的数据 scp 到我欠的另一台服务器。
这可能有用。尽管需要一些时间。
其他解决方案是制作分区的图像并逐步将其 scp 到第二台服务器(我真的不知道是否可行)
它将首先在服务器上创建一个文件,因此您首先需要那里的空间...所以不...这个例子
dd if=/dev/{partition} ibs=4096 conv=notrunc,noerror |
(ssh {IP} dd of=/partition.img obs=4096)
第三个解决方案是重新分区 /home sda2 主分区,但我担心这会损坏/擦除/覆盖数据
它会。
选择:
您可以使用吗sshfs
?如果您可以使用,那将挽救您的生命:将磁盘安装到您的桌面上,然后您可以使用它ddrescue
来制作映像。