I was imaging a (non-failed) internal drive to an external USB 3.0 hard drive 
    ddrescue -d -v /dev/sda imagefile mapfile

I know that if I abort this with Ctrl-C I can resume where I left off by 
re-running the command with no problem since the program has a chance to 
complete pending writes, etc., before stopping. But what if there is an abrupt 
power-off with no warning (no hibernation, no suspend, just instant loss of 
power to the computer and hence the external drive too)? No chance to complete 
cached writes, certainly not to close file handles, much less unmount the 
drive. I don't even know what the drive does in such cases with its internally 
cached but unwritten data.

Since it was a 12 hour process for a 2 TB drive that was about 76% through, I 
didn't want to restart it from scratch. Does ddrescue guarantee non-corruption 
in these cases if I just restart it? Would it have made a difference if I 
hadn't used the -d option for direct writes to the hard drive?

In this case I decided to use the mapfile.bak file the second time around, 
since it had a 2 minutes earlier last-modified time than mapfile, so it was 
cheap insurance, but was even that necessary?


Reply via email to