If the target drive is at least as big as the original drive you can use the built-in "dd" command that comes with all Unix & Linux based operating systems. Its not pretty to look at, but it will make an EXACT copy of the drive.
dd is also very handy for wiping out a drive. I had a flashdrive that got corrupted during a format and nothing would open it. Not Windows, not OSX, not Linux. They could all mount the drive, but could not access the filesystem on it.
So I used dd and wrote all 0's to it, then presto, was able to reformat it.