如何在给定扇区中查找文件?

如何在给定扇区中查找文件?

我目前正在尝试查找一个文件在扇区 2047。我的根分区从扇区 2048 开始。
我该如何找到该文件?鉴于我拥有的唯一信息是它所在的扇区。
提前致谢!

答案1

扇区 2047 中没有隐藏文件。可能有数据,但它不是文件系统的一部分。

要恢复它:

  1. 确定磁盘的扇区大小
  2. 读取扇区例如dd

确定扇区大小

sudo fdisk -l将显示扇区大小:

$ sudo fdisk -l
[sudo] password for root: 
Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SAMSUNG MZ7TY256
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt

这里有 512B 个扇区。这可能是最常见的情况;一些较新的设备将有 4KB 的扇区大小。这就是我们需要知道设备扇区大小的原因——我们必须在下一步中指定它,这样才dd知道要跳过多少字节。

读出所述扇区

dd对我们有帮助。

sudo dd if=/dev/sda of=sector2047 bs=512 skip=2046 count=1
  • if=/dev/sda告诉dd从中读取/dev/sda
  • of=sector2047告诉dd写入文件sector2047
  • bs=512指示dd以 512B 的增量(块大小)读取
  • skip=2046告诉dd跳过前 2046 个 512B 块
  • count=1告诉dd读取1个512B的块。

答案2

我会使用 vidarlo 使用的相同命令,但将 改为skip=2046skip=2047改为count=1count=3这将提供更大的搜索空间。

然后执行sudo apt install hexedit。之后,执行hexedit sector2047并向下滚动,直到在左侧看到您的消息。

相关内容