does somebody know a (windows) tool to make a BINARY IMAGE copy of a compact flash containing an operating system together with some applications. The new flash disk must be able to boot after the duplication. It might be possible under unix/linux by "dd if=/dev/xxx of=/fileonsomedisk" but i'd prefer some non-batch solution.
Grant Edwards wrote in news:41519ac8$0$63271$a1866201 @newsreader.visi.com:
I have used Elan Memory Explorer software to duplicate PCMCIA memory card images. You can get adapters for CF to PCMCIA that are supported by their software, although I have never used them personally. Not the most elegent solution by any means.
We don't have keyboard or mouse at all for my_server
power on my_server wsftp to my_server:/the_directory/file_on_some_disk power off my_server insert compact flash on my_adaptor on secondard IDE channel of my_server power on my_server automatic copy power off my server remove compact flash done
I dont' know what you mean buy a non-batch solution, but you can use dd under cygwin on Windows:
mount -f -b //./F: /dev/cflash dd of=myImage.bin if=/dev/cflash bs=512 count=xxx dd of=/dev/cflash if=myImage.bin bs=512 count=xxx Where F: is a free drive letter, and xxx is the number of 512 byte blocks you want to read or write.
You can use WINHEX to open the CF as "disk" and then select all and copy it to the clipboard. Then you can create a new file and paste the image to store it on your harddrive. In a similar way you can write the image back to other CF cards, as long as they are of same or bigger size. Note that not all CF cards with same size marking are of exactly same size.
Anyways, for production I would prefer a batch solution, because it minimizes chances of operator errors. You know, its easy to cut and paste one byte off, or have the cat run over the keyboard and ruin the image for all subsequent cards.
FYI: No solution that I've tried to this sort of problem is entirely satisfactory (when tested across large groups of CF media and also different BIOSes in the systems that expect to boot off the media). I don't recommend binary copying of CF media in this way.
My solution is to format the card as DOS, and use SYSLINUX as the OS loader. SYSLINUX loads the kernel and initrd as ordinary DOS files. The user can update those files by simple drag-n-drop in Windows Explorer. REMEMBER TO REQUIRE THEM TO EJECT THE CARD IN EXPLORER BEFORE REMOVING FROM THE CARD-READER!
If a new, blank card needs to be prepared, your batch file simply runs the DOS version of SYSLINUX to "bless" the card, then copies over the kernel and initrd image as files.
This solution might not work so neatly for other OSes than Linux, but it should be adaptable for say FreeBSD.