意外将映像添加到错误的驱动器/覆盖了分区表 + NTFS 分区起始位置

意外将映像添加到错误的驱动器/覆盖了分区表 + NTFS 分区起始位置

当我尝试复制 freenas ISO 时,我搞砸了并设置了错误的输出dd,覆盖了错误的外部硬盘。

  • 外部驱动器仅用于数据存储,系统完好无损
  • 驱动器有一个 NTFS 分区,包含整个设备(2TB WD 元素)
  • 驱动器是 EFI GPT
  • 驱动器当时已安装,运行后可能写入/读取了几kB的数据dd
  • 驱动器仅使用几个月且运行正常(定期进行 SMART / fs 检查)
  • 我还没有重启操作系统(crunchbang)
  • /proc/partition仍然保存着正确的信息(并且已经被存储)
  • dd的输出(记录输入 / 输出 / 字节)
  • testdrive在快速或深度搜索中未找到任何分区
  • 运行 photorec 来恢复更重要的数据(几个尚未备份的最近纯文本文件)。绝大多数磁盘内容(> 80%)都是不必要的媒体文件。
  • 在单独的计算机上安装 Windows

我目前的计划是让 photorec 执行其操作,然后使用 gparted 重新创建 mbr,并使用 cfdisk 使用来自 /sys/block/.../ 的扇区信息创建另一个 NTFS 分区。这是一个好的行动方案(即成功的机会)吗?或者我应该先尝试其他什么?

可能相关信息:

dd if=FreeNAS-8.0.4-RELEASE-p3-x86.iso of=/dev/sdc:
194568+0 records in
194568+0 records out
99618816 bytes (100 MB) copied

grep . /sys/block/sdc/sdc*/{start,size}:
/sys/block/sdc/sdc1/start:2048
/sys/block/sdc/sdc1/size:3907022848

cat /proc/partitions:
major minor  #blocks  name
** Snipped **
   8       32 1953512448 sdc
   8       33 1953511424 sdc1

current fdisk -l output: 
WARNING: GPT (GUID Partition Table) detected on '/dev/sdc'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdc: 2000.4 GB, 2000396746752 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdc doesn't contain a valid partition table

答案1

您可以使用以下方法重新创建分区表:

sfdisk --no-reread /dev/sdc << EOF
unit: sectors

disk1 : start= 2048, size= 3907022848, Id=07, bootable
disk2 : start=    0, size=          0, Id= 0
disk3 : start=    0, size=          0, Id= 0
disk4 : start=    0, size=          0, Id= 0
EOF

当然,这并不意味着您能够从分区中恢复。但ntfsfix也许能有所帮助。

相关内容