5

Some time ago I created a backup of an EXT4 partition with Clonezilla. Now the HDD crashed and I lost some important data.

The size of the image of the partition is 50GB. I tried to restore this image to a 200GB HDD but it turned out that the size of the original partition was 500GB. Since I don't have a 500GB HDD for dumping available I figured out how to force Clonezilla to ignore it by passing -C to partclone. But while recovering it stopped with the error target seek ERROR:Invalid argument.

I could imagine that the data on the partition is fragmented so that the actual bitmap doesn't fit. Is there a workaround for this? I have a HDD with about 600GB available but I don't like touching the partition table or such. Ideally would be a way to restore it to a mountable image. (ISO or such)

0

The Clonezilla site expressly mentions that restoring to a smaller device is a documented limitation of the tool, but this page makes mention of a possibility of attempting such a recovery if one believes that the data to restore. This is probably the sort of thing you did. If that does not work, then:

PhotoRec does wonders, but for a large partition, is time consuming and the results can make a monumental task of picking through the output of the tool. I used SysRescueCD, which includes it. As this tool needs at least as much free space on the system as was stored on the overwritten drive, one has to have enough free space for the data (including any data that was deleted and not overwritten before the failure). SysRescueCD also has sshfs on it, so you can use storage on another system if you don't have a free drive.

PhotoRec can get some file extensions (pictures, mp3's, and so on) correct, but file names were completely lost otherwise. Nevertheless, it was possible to recover certain key files. I got back about as much data as the drive had on it. Sometimes, it is not worth a lot of effort to recover everything, but what kind of time it takes is dependent on how important something was that was lost.

I've done this thing multiple times. Once I had a drive that failed. I used what amounted to ddrescue to snag a copy of the drive, then proceeded to recover most of 40 GB of mp3s.

0

One of the possibilities could be to try to mount the backup image and just copy the files to your new drive having previously created a filesystem on the new drive. This post describes how you can prepare a clonezilla image for mounting. It looks like you are going to need a lot of space, though, to decompress the image.

0

I was looking for a solution to a similar issue and want to share my outcome with you, in fact I had a windows notebook with a single-partitioned 750GB disk which wasn't booting anymore because of bad sectors but I had only a 160GB spare disk available; considering I knew the total amount of data on the source disk was about 32GB I got myself a copy of Hdd Regenerator to "repair" the bad sectors of the 750GB disk then I imaged it with Clonezilla.

Under Clonezilla I loaded the image then checked the options "-ICDS" in the first options screen and "-k1" in the second... the software restored the data and then the screen showed an error of some sort that I can't remember right now but was involved with space available on the target disk.

So I rebooted the system and started with the local disk (the one that I restored the image on), choose to "Load the (Windows) startup repair" which took a few minutes then I rebooted the system again and, after some grinding, it loaded Windows flawlessly!

0

since you have the 600gb empty you can mount your current HD and copy its files to the 600gb !
or you can make a new backup using dd+gzip and you will have chance to restore your hard drive without problems of loosing space.

if you want to do that from your current runing os :

mount your current hd (since it is an ext4 it can be mounted on different places).

sudo mkdir ~/bk/{0,1}
sudo mount /dev/SRC_HD ~/bk/0
sudo mount /dev/DST_HD ~/bk/1
sudo copy -arxp ~/bk/0/* ~/bk/1/

now you will make some changes if you want to boot with 600gb

use blkid to get HDs UIDs

SRC_HDUUID="7ahzj19f-a2b2-4f24-bb01-4ca7bc9fed3a"
DST_HDUUID="7aaeb19f-a2b2-4f24-ffc1-4ca7bc9fed3a"

sudo grep "$SRC_HDUUID" /etc /boot -rl | while read f
do
    sed -i "s/$SRC_HDUUID/$DST_HDUUID/g" $f
done

sudo umount -fl ~/bk/*

update the grub in your current os it

sudo update-grub

reboot into your fresh copy inside $DST_HD and then wipe your SRC_HD or any.

if you want to do that from a live os with gzip dd gunzip :

backup again your SRC_HD to a raw image

dd if=/dev/SRC_HD | gzip -c  > /inside/your600/image.img

restore it from the raw image

gunzip -c /inside/your600/image.img | dd of=/dev/SRC_HD

but before restoring it it's good to wash your SRC_HD

washing a hard drive is creating a file inside th hard drive filled up with zero, and removing that file!

sudo dd if=/dev/zero of=/where/hardrive/mountd/zero

acoording to the hd size it will take some time and it will stop with a 'disk full' mesage !

sudo rm /where/hardrive/mountd/zero

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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