You can copy drives with errors using the Unix dd command from the Terminal
The Unix dd command can copy one volume (disk) onto another and continue even after encountering errors. Use the df command to list all volumes connected and make a note of the unix drive name (like /dev/disk3s6) and use these in the dd command to do the copy.
Note: be very careful here because it is easy to overwrite good disks if you get this command wrong!
Where FROM is the disk name to copy from and TO is the disk to copy to.
The bs option sets the block size to use, and conv=noerror,sync causes bad data to be replaced with zeros. In that case, some files might be damaged, but they might still be partially recoverable.
My latest blog post: Deontology vs Consequentialism: If we have free speech, personal freedom, equality, and truthfulness we are off to a pretty good start. (posted 2025-10-20). Warning: mysqli_connect(): MySQL server has gone away in /Library/WebServer/Documents/Owen2/Inc/Footer.m.inc.php on line 51
Warning: mysqli_connect(): Error while reading greeting packet. PID=89518 in /Library/WebServer/Documents/Owen2/Inc/Footer.m.inc.php on line 51
Warning: mysqli_connect(): (HY000/2006): MySQL server has gone away in /Library/WebServer/Documents/Owen2/Inc/Footer.m.inc.php on line 51
Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in /Library/WebServer/Documents/Owen2/Inc/Footer.m.inc.php on line 52
Could not connect to MySQL: