* [gentoo-user] "loopback mount" hard-drive image created with dd? @ 2008-01-18 3:19 Stroller 2008-01-18 9:04 ` आशीष शुक्ल Ashish Shukla 0 siblings, 1 reply; 7+ messages in thread From: Stroller @ 2008-01-18 3:19 UTC (permalink / raw To: gentoo-user Hi there, Before installing on a new laptop which came with Vista pre-installed I took an image of the hard-drive using dd. (ie: `dd if=/dev/sda of=/ mnt/sdb1/disk.img`, where /mnt/sdb1 was a portable USB hard-drive). Obviously the intention was that if I b0rked things up I could just `dd` the image back onto the laptop and all would work as the manufacturer shipped it, but I'd now find it useful to be able to take a look inside the image and examine a few files. Is there any way to do this, please? I'm fairly confident that there were originally a couple of partitions on the drive, and the one I want to look at will be NTFS, of course. I know that a CD iso I can mount using `mount file.iso / mnt/cdrom -t iso9660 -o loop`, but is there an equivalent for whole partition tables? Thanks in advance for any suggestions or advices, Stroller. -- gentoo-user@lists.gentoo.org mailing list ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] "loopback mount" hard-drive image created with dd? 2008-01-18 3:19 [gentoo-user] "loopback mount" hard-drive image created with dd? Stroller @ 2008-01-18 9:04 ` आशीष शुक्ल Ashish Shukla 2008-01-18 13:02 ` Stroller 0 siblings, 1 reply; 7+ messages in thread From: आशीष शुक्ल Ashish Shukla @ 2008-01-18 9:04 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 755 bytes --] ,--[ On Fri, Jan 18, 2008 at 03:19:49AM +0000, Stroller wrote: [...] > I'm fairly confident that there were originally a couple of partitions on > the drive, and the one I want to look at will be NTFS, of course. I know > that a CD iso I can mount using `mount file.iso /mnt/cdrom -t iso9660 -o > loop`, but is there an equivalent for whole partition tables? How about using your disk image as HD in a VM, and then inspect it from VM, hmm... Or look out for some tools which allow you to play with hard disk images, e.g. mtools . HTH -- Ashish Shukla आशीष शुक्ल http://wahjava.wordpress.com/ ·-- ·- ···· ·--- ·- ···- ·- ·--·-· --· -- ·- ·· ·-·· ·-·-·- -·-· --- -- [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] "loopback mount" hard-drive image created with dd? 2008-01-18 9:04 ` आशीष शुक्ल Ashish Shukla @ 2008-01-18 13:02 ` Stroller 2008-01-18 14:40 ` Ashish Shukla आशीष शुक्ल 0 siblings, 1 reply; 7+ messages in thread From: Stroller @ 2008-01-18 13:02 UTC (permalink / raw To: gentoo-user On 18 Jan 2008, at 09:04, आशीष शुक्ल Ashish Shukla wrote: > ,--[ On Fri, Jan 18, 2008 at 03:19:49AM +0000, Stroller wrote: > [...] > >> I'm fairly confident that there were originally a couple of >> partitions on >> the drive, and the one I want to look at will be NTFS, of course. >> I know >> that a CD iso I can mount using `mount file.iso /mnt/cdrom -t >> iso9660 -o >> loop`, but is there an equivalent for whole partition tables? > > How about using your disk image as HD in a VM, and then inspect it > from > VM, hmm... Would that work? I've never used VMs - are their drive images exactly "blocky" as my `dd` command would produce? (`dd if=/dev/sda of=/mnt/sdb1/disk.img`, where /mnt/sdb1 was a portable USB hard-drive). > Or look out for some tools which allow you to play with hard > disk images, e.g. mtools . It looks like mtools is geared towards floppies but will handle a hard-drive fine. However the manual <http://mtools.linux.lu/ mtools.html> suggests no support for NTFS. (??) Stroller.-- gentoo-user@lists.gentoo.org mailing list ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] "loopback mount" hard-drive image created with dd? 2008-01-18 13:02 ` Stroller @ 2008-01-18 14:40 ` Ashish Shukla आशीष शुक्ल 2008-01-18 18:47 ` Yahya Mohammad 0 siblings, 1 reply; 7+ messages in thread From: Ashish Shukla आशीष शुक्ल @ 2008-01-18 14:40 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1260 bytes --] >>>>> "Stroller" == Stroller <stroller@stellar.eclipse.co.uk> writes: Stroller> Would that work? I've never used VMs - are their drive images exactly Stroller> "blocky" as my `dd` command would produce? Stroller> (`dd if=/dev/sda of=/mnt/sdb1/disk.img`, where /mnt/sdb1 was a Stroller> portable USB hard-drive). I installed FreeBSD on my box, this way, when I didn't have CD-ROM drive on my box :) . I've used QEmu (AMD64), and it worked flawlessly :) . Stroller> It looks like mtools is geared towards floppies but will handle a Stroller> hard-drive fine. However the manual <http://mtools.linux.lu/ mtools.html> suggests no support for NTFS. (??) Another hack you can try is use to use '--offset' option of 'losetup'. First figure out from which byte, NTFS partition starts in disk image, and then you create a loopback back device for that image and the starting offset using 'losetup' and finally 'mount' the loopback as NTFS partition :) . Please do post your results, if you're successful :) HTH -- Ashish Shukla आशीष शुक्ल http://wahjava.wordpress.com/ ·-- ·- ···· ·--- ·- ···- ·- ·--·-· --· -- ·- ·· ·-·· ·-·-·- -·-· --- -- [-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] "loopback mount" hard-drive image created with dd? 2008-01-18 14:40 ` Ashish Shukla आशीष शुक्ल @ 2008-01-18 18:47 ` Yahya Mohammad 2008-01-21 8:54 ` [gentoo-user] " Remy Blank 0 siblings, 1 reply; 7+ messages in thread From: Yahya Mohammad @ 2008-01-18 18:47 UTC (permalink / raw To: gentoo-user > Another hack you can try is use to use '--offset' option of > 'losetup'. First figure out from which byte, NTFS partition starts in > disk image, and then you create a loopback back device for that image > and the starting offset using 'losetup' and finally 'mount' the > loopback as NTFS partition :) . Here's more detail on how to do that # losetup /dev/loop0 /path/to/diskimage # fdisk -l /dev/loop0 (example) Disk /dev/sdb: 160.0 GB, 160041885696 bytes 255 heads, 63 sectors/track, 19457 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdb1 * 1 1044 8385898+ c W95 FAT32 (LBA) /dev/sdb2 1045 19457 147902422+ 83 Linux suppose you want to mount the partition on sdb2, the offset for that would be 8225280 * 1045 = 8595417600. detach the disk image # losetup -d /dev/loop0 and setup the loop for the partiion # losetup -o8595417600 /dev/loop0 /path/to/diskimage and mount it # mount -t fstype /dev/loop0 /path/to/mountdir > Please do post your results, if you're successful :) I second that, I'm curious to know if it works oh, and make a backup just in case :) -- gentoo-user@lists.gentoo.org mailing list ^ permalink raw reply [flat|nested] 7+ messages in thread
* [gentoo-user] Re: "loopback mount" hard-drive image created with dd? 2008-01-18 18:47 ` Yahya Mohammad @ 2008-01-21 8:54 ` Remy Blank 2008-01-24 3:45 ` Tom 0 siblings, 1 reply; 7+ messages in thread From: Remy Blank @ 2008-01-21 8:54 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1724 bytes --] Yahya Mohammad wrote: > # losetup /dev/loop0 /path/to/diskimage > # fdisk -l /dev/loop0 > (example) > Disk /dev/sdb: 160.0 GB, 160041885696 bytes > 255 heads, 63 sectors/track, 19457 cylinders > Units = cylinders of 16065 * 512 = 8225280 bytes > > Device Boot Start End Blocks Id System > /dev/sdb1 * 1 1044 8385898+ c W95 FAT32 (LBA) > /dev/sdb2 1045 19457 147902422+ 83 Linux Thanks for the tip! I didn't know you could mount a whole disk image as loopback, and see the partition table with fdisk. I always printed the partition table before making the disk image. > I second that, I'm curious to know if it works It does, I have done it before, but there's a special case for the first partition of the disk. According to your output of fdisk, it is supposed to start at cylinder 1. However, if you run fdisk with the -u option (giving the positions and sizes in sectors), you get the following: (example) # fdisk -lu /dev/loop0 Disk /dev/loop0: 10.0 GB, 10056130560 bytes 240 heads, 63 sectors/track, 1299 cylinders, total 19640880 sectors Units = sectors of 1 * 512 = 512 bytes Disk identifier: 0xc1afc1af Device Boot Start End Blocks Id System /dev/loop0p1 * 63 4097519 2048728+ b W95 FAT32 /dev/loop0p2 4097520 8195039 2048760 5 Extended /dev/loop0p5 4097583 8195039 2048728+ b W95 FAT32 That is, the first partition starts at sector 63, i.e. at an offset value of 63 * 512 = 32256. > oh, and make a backup just in case :) And mount the filesystem read-only with the "ro" mount option. -- Remy [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 187 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [gentoo-user] Re: "loopback mount" hard-drive image created with dd? 2008-01-21 8:54 ` [gentoo-user] " Remy Blank @ 2008-01-24 3:45 ` Tom 0 siblings, 0 replies; 7+ messages in thread From: Tom @ 2008-01-24 3:45 UTC (permalink / raw To: gentoo-user Remy Blank wrote: > Yahya Mohammad wrote: >> # losetup /dev/loop0 /path/to/diskimage >> # fdisk -l /dev/loop0 >> (example) >> Disk /dev/sdb: 160.0 GB, 160041885696 bytes >> 255 heads, 63 sectors/track, 19457 cylinders >> Units = cylinders of 16065 * 512 = 8225280 bytes >> >> Device Boot Start End Blocks Id System >> /dev/sdb1 * 1 1044 8385898+ c W95 FAT32 (LBA) >> /dev/sdb2 1045 19457 147902422+ 83 Linux > > Thanks for the tip! I didn't know you could mount a whole disk image as > loopback, and see the partition table with fdisk. I always printed the > partition table before making the disk image. > >> I second that, I'm curious to know if it works > > It does, I have done it before, but there's a special case for the first > partition of the disk. According to your output of fdisk, it is supposed > to start at cylinder 1. However, if you run fdisk with the -u option > (giving the positions and sizes in sectors), you get the following: > > (example) > # fdisk -lu /dev/loop0 > > Disk /dev/loop0: 10.0 GB, 10056130560 bytes > 240 heads, 63 sectors/track, 1299 cylinders, total 19640880 sectors > Units = sectors of 1 * 512 = 512 bytes > Disk identifier: 0xc1afc1af > > Device Boot Start End Blocks Id System > /dev/loop0p1 * 63 4097519 2048728+ b W95 FAT32 > /dev/loop0p2 4097520 8195039 2048760 5 Extended > /dev/loop0p5 4097583 8195039 2048728+ b W95 FAT32 > > That is, the first partition starts at sector 63, i.e. at an offset > value of 63 * 512 = 32256. > >> oh, and make a backup just in case :) > > And mount the filesystem read-only with the "ro" mount option. > > -- Remy > Some time ago, I wrote a little script to automate that process, maybe it will help you also. (And yes, I know that the code isn't that pretty) Direct copy & paste: #!/bin/bash INFILE="$1" PARTITION="$2" MOUNTPOINT="$3" OPT="$4" if [ "$INFILE" = "" ] ; then echo "Usage: $0 infile partition mountpoint <options>" ; exit ; fi if [ "$PARTITION" = "" ] ; then echo "Usage: $0 infile partition mountpoint <options>" ; exit ; fi if [ "$MOUNTPOINT" = "" ] ; then echo "Usage: $0 infile partition mountpoint <options>" ; exit ; fi if [ "$OPT" != "" ] ; then OPT2=",${OPT}" ; fi PSTARTB=`sfdisk -d "$INFILE" | grep "start=" | head -n"$PARTITION" | tail -n1 | sed 's/.*start=[ ]*//' | sed 's/,.*//'` PSTART=$[ $PSTARTB * 512 ] #PSIZEB=`sfdisk -d "$INFILE" | grep "size=" | head -n4 | tail -n1 | sed 's/.*size=[ ]*//' | sed 's/,.*//'` #PSIZE=`echo "$PSIZEB * 512" | bc` mount "$INFILE" "$MOUNTPOINT" -o loop,offset="$PSTART""$OPT2" #,sizelimit="$PSIZE""$OPT2" - Tom -- gentoo-user@lists.gentoo.org mailing list ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-01-24 3:46 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-01-18 3:19 [gentoo-user] "loopback mount" hard-drive image created with dd? Stroller 2008-01-18 9:04 ` आशीष शुक्ल Ashish Shukla 2008-01-18 13:02 ` Stroller 2008-01-18 14:40 ` Ashish Shukla आशीष शुक्ल 2008-01-18 18:47 ` Yahya Mohammad 2008-01-21 8:54 ` [gentoo-user] " Remy Blank 2008-01-24 3:45 ` Tom
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox