在 1T 块设备中搜索指定偏移处的特定字节序列

在 1T 块设备中搜索指定偏移处的特定字节序列

我正在使用 dd 发生事故后执行数据恢复。从长远来看,我需要使用一些恢复工具来尝试修复文件系统

与此同时,系统上有一个我需要的映像,如果我能找到该映像,我将能够使用该映像来对设备进行映像。

字节序列是"\x21\x35\x2c\x66\xe4\xe8\x48\xe0\xf9\x4a\x92\x\x7f\x3f\xb7\x6e".我尝试过在Python中使用mmap,但据我所知,mmap.find()它不允许打开块设备,因为我每次尝试时似乎都会遇到错误。

我尝试过使用其他工具,例如 dd 与 grep 结合使用,但它在磁盘的开头进行搜索,而它可能会接近结尾。扫描需要非常长的时间。

那么 tl;dr 搜索具有以下要求的 1TB 数据的最佳方法是什么:

  • 字节串
  • 在指定的偏移处
  • 可以搜索文件而无需尝试一次性打开它(就像 Python 一样with open
  • 可以读取未安装的块设备

相关内容