This weekend was rather busy for me, but I did take some time to try out a few things. It looks like the init.gz package from the 899 revision already contains the components for partclone. However, I can’t figure out how to get the /bin/fog script to actually use it. I tried editing the file, especially pertaining to Windows 7, and tried getting it to use part clone with the commands:
partclone.ntfs -c -s <hard drive/partition> -o <file to save as>
and
partclone.restore -s <filename> -o <hard drive/partition>
But i kept getting the typical invalid syntax response.
I am going to try, in debug mode, to mount the nfs share and commandline partclone to find out exactly what I need to do to get partclone working.
For right now, I’m just lost in the sauce trying to figure out how to get this to work. My hopes are that partclone will work better for the single disk, resizable than partimage currently does.
One question I have though, hopefully somebody can answer, is How come, during the deploy process for Single Disk, Resizable, there isn’t a method to recreating the first partition? The lines that I find are:
elif [ "$win7partcnt" == "2" ]; then
win7part2start=`parted -s $hd u kB print | sed -e '/^.2/!d' -e 's/^ [0-9]*[ ]*//' -e 's/kB .*//'`;
if [ "$win7part2start" == "" ]; then
handleError "Unable to determine disk start location.";
fi
adjustedfdsize=`expr $sizefd + $win7part2start`;
parted -s $hd u kB rm 2 &>/dev/null;
parted -s $hd u kB mkpart primary ntfs ${win7part2start}kB ${adjustedfdsize}kB &>/dev/null;
Now I understand that the mbr, supposedly, gets rewritten after the imaging begins, but what I’m finding, is that the partitions aren’t deleted and their not recreated.
Also notice, there’s nothing stating which part is the boot partition either.
I guess I just don’t understand enough of the system, but it would seem to me that we would need somthing like:
elif [ "$win7partcnt" == "2" ]; then
win7part2start=`parted -s $hd u kB print | sed -e '/^.2/!d' -e 's/^ [0-9]*[ ]*//' -e 's/kB .*//'`;
if [ "$win7part2start" == "" ]; then
handleError "Unable to determine disk start location.";
fi
adjustedfdsize=`expr $sizefd + $win7part2start`;
parted -s $hd u kB rm 1 &>/dev/null
parted -s $hd u kB mkpart primary ntfs 2048s ${win7part1end}kB &>/dev/null;
parted -s $hd set 1 boot on &>dev/null
parted -s $hd u kB rm 2 &>/dev/null;
parted -s $hd u kB mkpart primary ntfs ${win7part2start}kB ${adjustedfdsize}kB &>/dev/null;
This would need to happen anytime the system is being written, but maybe not so much on the Multiple partitions as the MBR is directly written which should, theoretically, contain the partitioning of the hard drive so it can continue with no issues.
For Single Disk, resizeable, this doesn’t happen and the partitions, apparently, are removed, but not properly recreated. This causes an issue in that that rec.img.000 gets installed, but because ${hd}2 doesn’t exist, sys.img.000 can’t be written to the 2nd partition, so it just continues on like the deploy has completed.