The cloning software in Linux that I know are based on the command "dd" which read sector-by-sector from one disk and write the same on another disk. As such it cannot possibly fail as nothing other than an mirror image of the hard disk is replicated, literally down to byte by byte.
dd clones empty space same as filled data so I believe Clonezila was designed to economize the time wasted on cloning empty spaces. Therefore Clonezola works fine for a normally stand alone hard disk. It is possible that it breaks down in a Raid 2 or 5 set as the position of every byte has significance because of the stripe operation. Therefore not cloning the empty spaces in this case might upset the Raid system.
My advise would be to clone each disk by the standard mean of using dd in a terminal, say from a source disk sda to a target disk sde:
dd if=/dev/sda of=/dev/sde bs=32256
You will need to clone each disk at a time.
I found cloning a block size equal to a full track of 63 sectors times 512 byes per sector about the optimum. Without specifying the bs parameter dd defaults to 512 bytes per record transfer and take a long time.
To ensure a perfect cloning you need the target disk either exactly the same size as the source or just larger. This is to satisfy the number of records from the source disk is fully executed. SUch can only be achieved only if the target disk has exact number of sectors as the source. Failing that the target disk cloning will be incomplete and the disk could have a defective partition table.
Say I have a HDD of 300 GB (sda) which I partition as follows
a) / 50 GB (/dev/sda1)
b) Swap 50 GB
c) boot 500 MB
d) remaining (/dev/sda2)
Now I take backup of each /dev/sda1 and /dev/sda2
The /dev/sda1 is 10 percent used and /dev/sda2 is 4 percent used
Now if I use PING or clonezilla to backup only the partitions sda1 and sda2
and If I replace the HDD of 300 GB with 290 GB
will clonezilla / PING be able to restore the partitions considering that
the space on the new sda1 and sda2 is a little less than original ....
But considering that usage is 10 percent and 4 percent ...does it matter ?
If you have to clone a bigger hard disk to a small hard disk, like using a 300Gb source on a 290GB target you need to resize the last partition's boundary (using Gparted) so that the number of sectors is within the capacity of the target disk.
You should clone the whole disk to allow the full compliment of sectors of the smaller disk runs its course or if you know how to calculate the number of records (size as per that specified in the bs parameter) you can use the "count" parameter to specify the exact number of records to be cloned.
If you don't do the above then your new cloned disk will have a partition table using a boundary larger than the physical disk and no operating system will touch it because none of them know what to do.