当我将硬盘安装到电脑上时,系统提示我必须先格式化才能使用。我知道我曾经将它用作普通硬盘,并且它仍然包含数据。我发现,制造商可能已损坏。还能是什么原因?还有——我有机会自己恢复它吗?
编辑1:更多信息:
fdisk -l /dev/sdd
Disk /dev/sdd: 400.1 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders, total 781422768 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x2836e887
Device Boot Start End Blocks Id System
/dev/sdd1 63 93801897 46900917+ 7 HPFS/NTFS/exFAT
/dev/sdd2 104857261 781420751 338281745+ f W95 Ext'd (LBA)
/dev/sdd5 104857263 314572607 104857672+ e W95 FAT16 (LBA)
/dev/sdd6 314572671 524288015 104857672+ e W95 FAT16 (LBA)
/dev/sdd7 524288079 734003423 104857672+ e W95 FAT16 (LBA)
/dev/sdd8 734003487 781420751 23708632+ e W95 FAT16 (LBA)
因为 sdd1 完全没有问题。这个运行正常。
运行后得到一些信息testdisk
:
Warning: Incorrect number of heads/cylinder 16 (NTFS) != 255 (HD)
HPFS - NTFS 0 1 1 5838 228 54 93801825
正如下面评论中提到的,我已经dd
在设备上进行了操作。所以我现在得到了二进制文件。但接下来呢?如何找出这些副本中是否有文件?
答案1
那么fdisk /mbr
可能是你的朋友...我认为 WinXP 安装 CD 上的修复控制台可以让你运行它。
但我会做一个dd
在接触驱动器之前,请先从 Linux 备份。该命令dd
可以逐位读取驱动器,忽略所有结构,因此只要驱动器实际运行正常,它就应该可以工作:
dd if=/dev/sda<insert proper number here> of=/mypath/myfile bs=4M
参数if
指定输入文件(或在本例中为设备),并of
指定输出文件。
我确实做过几次这样的复制。您可能需要试验块大小,但 4M 通常效果很好(免责声明:我通常使用通过 USB 到 SATA 转换器连接的备份驱动器来执行此操作,直接连接可能会受益于设置更高的块大小。)
所有 Linux Live CD 都应该足够了,我通常使用诺皮克斯