Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I've just backed up two partitions with dd under linux, so I have raw partitions images: part1.img and part2.img. Additionally I've backed up the disk's MBR (first 512 sectors of the disk) and some text info ('fdisk -l' /dev/sdb).

fdisk -l /dev/sdb said before I did dd:

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 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: 0x7d22da32

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         196     1574338+  27  Unknown
/dev/sda2             197       19457   154713982+   7  HPFS/NTFS

It's a standard laptop disk so part1 is a system recover partition. Part2 is the Windows Vista bootable partition.

I've then converted part2.img to part2.vdi (VirtualBox disk format). I've attached part2.vdi to an existing virtual XP machine and I can browse it and delete what I want (part2.vdi being second partition, not booting from it).

However the problem is when I want to attach the part2.vdi to the virtualized Linux system and want to mount it.

now fdisk -l /dev/sdb says (sdb being part2.vdi here, so not whole disk as before):

Disk /dev/sdb: 158.4 GB, 158427250688 bytes
255 heads, 63 sectors/track, 19261 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: 0x2052474d

This doesn't look like a partition table
Probably you selected the wrong device.

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   ?         410      119791   958924038+  70  DiskSecure Multi-Boot
Partition 1 does not end on cylinder boundary.
/dev/sdb2   ?      121585      234786   909287957+  43  Unknown
Partition 2 does not end on cylinder boundary.
/dev/sdb3   ?       14052       14052           5   72  Unknown
Partition 3 does not end on cylinder boundary.
/dev/sdb4          164483      164486       25945    0  Empty
Partition 4 does not end on cylinder boundary.

Partition table entries are not in disk order

Where's the catch? Why does Windows "mount" partition automatically (don't see weird entries) and I can access data but under Linux I have problems with partition table entries? How can I solve it without losing data/partition integrity?

share|improve this question
add comment

1 Answer

up vote 0 down vote accepted

fdisk is only applicable to a whole disk. part2.vdi is just one partition.

The disk format is roughly:

<MBR><Part Table><Part 1><Part 2>

You only have <Part 2> - there is no <Part Table> included in it.

Windows recognises the filesystem on it as NTFS and handles it as such.

You may be able to just mount it in Linux with:

# mount -t ntfs /dev/sdb /path/to/mount

without worrying about partition tables etc.

share|improve this answer
    
Oh, didn't know fdisk is only applicable to whole disk. Thanks. –  qlf00n Mar 10 '11 at 9:55
    
fdisk operates on the partition table, so without one it would fail. –  Majenko Mar 10 '11 at 10:10
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.