起因是,挂载了一个装了冷备数据的硬盘到debian中。然后机器上面还有两个个硬盘,大概和下面类似:
要重新分区的sdc硬盘。鬼事神差的,选了sdb
# 选错了,选成了sdb,正确应该是sdc
sudo fdisk /dev/sdb
一桶操作猛如虎。完事儿之后,卧槽!!!!心里面凉了半截,这是最后一份冷备。赶紧想办法恢复数据。
先是在Widnows上面使用Diskgenius把全盘做了一个镜像出来。避免后续恢复数据的时候,再次误操作,让数据恢复概率进一步降低。
全盘镜像之后,又使用Diskgenius做了一次文件恢复扫描,结果很不理想。所以如果你在这里做了和我一样的操作的话,就不要用Diskgenius扫了,基本没啥用。
然后一番搜素下来,linux上面的testdisk可以恢复被误删除的分区。建议使用ubuntu的live cd。
安装软件包:
sudo apt install testdisk -y
然后
sudo testdisk
选择Create或者No log均可。
然后选中要恢复的硬盘,进入下一步。
一般情况下,选择Intel。
选择Analyse
选择Quick Search
找到一个分区,选择分区之后,按“P”预览分区中的文件
分区中的文件已经列出来了。
按照下方的操作指示,选择文件,将文件恢复至其他地方就可以了。
文件顺利的在恢复啦~
另外一种方式:
如果只是将分区误删,没有重新分区的话。可以使用EXT4的超级块的特性恢复分区。
获取超级块备份:
dumpe2fs /dev/sd<partition-id> | grep -i superblock
如果能正常显示超级块信息。执行修复
sudo fsck.ext4 -v /dev/sd<partition-id>
但是这种方式,在我这种场景下,我尝试了不好使。
文章评论