Mount CloneZilla image

From WickyWiki


Locate image and go there, you will find files like: "sda1.ntfs-img.aa" and "sda1.ntfs-img.ab" ...

Find what compression has been used, gzip, bzip or lzop?

file *.ntfs-img.aa

Note: the image you are about to extract will be sized to the original partition-size, unused space included. This can take quite some time and disk space.

Windows NTFS partition

Guide:

Extract

Install partclone:

add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse"
apt-get update
apt-get install partclone

Extract partition image (sdb1) from CloneZilla:

cat sdb1.ntfs-ptcl-img.gz.* | gzip -d -c | partclone.restore --restore_row_file -F -O -C -s - -o sdb1.img

Mount/unmount image:

mdconfig -a -t vnode -f sdb1.img md0
mkdir /media/mnt
mount -t ntfs /dev/md0 /mnt

Resize

Npte: I didn't try this yet.

Check for errors:

dmesg | tail

Check for the minimum size:

ntfsresize -m /dev/md0

Apply the resize (here 36Mb)

After the resize, the imagefile stays at its original size, it's not automatically truncated. We use ntfsclone to extract the relevant data.

Note that this can take considerable time:

ntfsresize --size 36M /dev/md0

Clone again to get the minimum size. The --force is necessary because the resize action flags the volume for a chkdsk check.

ntfsclone --force -o shrunk.img /dev/md0
mdconfig -d -u /dev/md0

Restore to /dev/sda3 - OVERWRITE!!! Note: this is not succesful only the minimum size of the partition is used

partclone.restore -d -s sdb1.img -o /dev/sda1

Resize to fit partition:

ntfsresize -x /dev/sda1


You will need ntfsclone, install

sudo apt-get install ntfsprogs

Lets say the compression is gzip (as it probably is), then we need to extract the image using gzip.

sudo cat *.ntfs-img.* | gzip -d -c | ntfsclone --restore-image -o ntfs.img -

Mount with:

sudo mkdir /media/ntfs-img
sudo mount -o loop -t ntfs ntfs.img /media/ntfs-img

Linux ext4 partition

Extract

Install partclone:

add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse"
apt-get update
apt-get install partclone

Lets say compression is gzip (as it probably is), then we need to extract the image using gzip:

Options:

  • -C ignore size errors
  • -F force
  • -O overwrite
  • -s <> source, specify - to use standard input (pipe)
  • -o <outputfile>
cat sda5.ext4-ptcl-img.gz.* | gzip -d -c | partclone.restore --restore_row_file -F -O -C -s - -o sda5.img

Mount/unmount with:

mkdir /media/ubuntutje
mount -o loop -t ext4 sda5.img /media/sda5img
umount /media/sda5img

Restore

You can do this instead of using CloneZilla if you have 'geometry' errors or other problems.

Check for (mount) errors:

dmesg | tail

Fix errors (if any)

fsck.ext4 -f sda5.img
e2fsck -f sda5.img

Resizing the filesystem on sda5.img to minimum size. Note: this can take a lot of time

resize2fs -M sda5.img

Restore to partition, in this example /dev/sda3.

THIS WILL OVERWRITE THE TARGET PARTITION!! 
ALL DATA ON THAT PARTITION (/dev/sda3) WILL BE LOST!!

Note: after this only the earlier 'minimum size' of the partition is used

partclone.restore -d -s sda5.img -o /dev/sda3

Resize partition to fit the whole available space:

e2fsck -f /dev/sda3
resize2fs /dev/sda3