我有一个硬盘转储。一家硬盘恢复公司为我做到了。我不知道他们用来进行转储的软件是什么,我所拥有的只是一个文件disk.img
。
我唯一的入门想法是使用file
:
$ file disk.img
12693A.img: x86 boot sector; GRand Unified Bootloader, stage1 version 0x3, stage2 address 0x2000, stage2 segment 0x200; partition 1: ID=0xc, starthead 1, startsector 63, 312576642 sectors, code offset 0x48
我想,如果这是硬盘的转储,则按以下顺序包含:a)引导扇区b)分区表c)分区。因此,我猜该file
工具仅读取(任何)文件的第一部分,在这种情况下,第一部分是引导扇区,尽管该文件包含更多内容。
我如何能:
1)参见分区表。不是十六进制代码,而是关于其中哪些分区的人类可读内容。
2)如何查看每个分区的内容?我猜这被称为“挂载”,即使它不是物理磁盘,即使我对更改任何文件都不感兴趣,只是看到内容。
由于它是包含整个磁盘副本的文件,因此您可以像对待其他任何块设备一样简单地对待它并fdisk
在其上运行。给定磁盘映像已被调用disk.img
,下面的命令就足够了:
fdisk -l disk.img
这将产生类似于以下内容的输出:
Disk /home/yjwong/disk.img: 250.1 GB, 250058268160 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488395055 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/home/yjwong/disk.img1 2048 3905535 1951744 82 Linux swap / Solaris
/home/yjwong/disk.img2 * 3905536 488394751 242244608 83 Linux
要挂载分区,Linux内核允许您在mount命令中指定磁盘映像的偏移量(以字节为单位)。您需要在磁盘映像中循环挂载分区。但是,由于fdisk
以扇区为单位指定了起始偏移量,因此您需要将给定的偏移量乘以扇区大小(通常为512)。
要安装上面示例中的第二个分区,偏移量为3905536 * 512 = 1999634432
。
假设分区类型为ext4
,并且/mnt
是预期的安装点,则以下命令可以解决问题:
sudo mount -t ext4 /home/yjwong/disk.img /mnt -o loop,offset=1999634432
如果要以只读方式查看内容,则可以添加ro
到安装选项:
sudo mount -t ext4 /home/yjwong/disk.img /mnt -o loop,offset=1999634432,ro
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句