Note: A recommendation similar to this has been asked in a few questions, but the details differ enough that it's not clear if (and I don't think) any of the answers are applicable to my situation. So I hope this isn't a total duplicate.
I'm using Windows 8.1 and 10. I have a data SSD that was badly corrupted during a disk partition modification - the software reported all good but the resulting partition was unreadable and un-chkdsk-able. Stupidly, I didn't backup first, I trusted the software.
I've run a data recovery program on the data of the damaged disk, and recovered most data, but before I reuse the SSD, I want to do a sector-by-sector clone of the entire disk, into a VHDX file, so that if I need to rerun a recovery software in future for any reason, I have the exact data mountable as a virtual disk, and I can mount the VHDX read-only on Windows and rerun my recovery software with other options, and see what I get.
My problem is that it's very unclear even after a lot of reading, the easiest way to do this. Because the disk is mangled, I have no way to test if the contents are identical except for trusting the clone program, or run and compare
dd -> sha1 on the original SSD and on the mounted VHDX - assuming I figure how to get them truly identical.
I'm pretty sure there's free software to do this, if not I'll reluctantly use paid. But I need to be sure I have a faithful copy where the software copies sector by sector, and doesn't try to interpret what it reads, or skip sectors it thinks don't contain data. There are no bad sectors AFAIK, just mangled data.
I don't mind if it uses
dd - I can run DD on a FreeBSD system and process the resulting file in Windows, or run
dd on Windows itself.
tl;dr - Windows (ideally) or at a pinch FreeBSD/LiveCD software, to faithfully and verifiably copy a corrupted but fully working data SSD contents sector by sector to a new VHDX file. The aim being to create a VHDX image that I can later mount and use for lost file recovery with a file recovery program.
And how to use it correctly for the task.
Software recommendations please?