#!/bin/sh # Mount partitions within a disk image file # License: LGPLv2 # Author: P@adraigBrady.com # V1.0 29 Jun 2005 Initial release # V1.1 01 Dec 2005 Handle bootable (DOS) parititons # v1.2 25 Jan 2013 Glen Gray: Handle GPT partitions if test "$Argc" -ne "3" { echo "Usage: $[basename $0] " > !2 exit 1 } setglobal FILE = $1 setglobal PART = $2 setglobal DEST = $3 if parted --version >/dev/null !2 > !1 { # Prefer as supports GPT partitions setglobal UNITS = $[parted -s $FILE unit s print !2 >/dev/null | grep " $PART " | tr -d 's' | awk '{print $2}] } elif fdisk -v >/dev/null !2 > !1 { setglobal UNITS = $[fdisk -lu $FILE !2 >/dev/null | grep "$FILE$PART " | tr -d '*' | awk '{print $2}] } else { echo "Can't find the fdisk or parted utils. Are you root?" > !2 exit 1 } setglobal OFFSET = $[expr 512 '*' $UNITS] mount -o loop,offset=$OFFSET $FILE $DEST