Thanks for the great program. I've been using it to rescue a failing disk in my MacBook Pro, and I've learned a few things I thought I should pass along...
1) Get version 1.7! I started the lazy way by just getting the darwin ports, but after some troubles, and after finding this list, I figured out that the version I was using was 1.2! Turns out that getting the darwin ports is completely unnecessary, just download 1.7 from the FTP site, tar xjvf it, ./configure, and make. In my case, since I am doing the rescue with my wife's home computer, I had to go download XCode tools from apple ADC, to get a compiler, etc. 2) Turn off journaling! My MacBook Pro (hereafter MBP) still boots, but I was getting periodic I/O errors (with a 3 minute, 45 second dramatic pause each time). So I shut down, started the MBP in Firewire Transfer mode (hold down the "T" key while booting), and firewire-connected it to my wife's iMac. The disk showed up just fine, but I couldn't Eject it, so I couldn't get to the /dev/disk version of the device. I finally figured out that the iMac was trying to "replay the journal", but it couldn't because of the I/O errors. Here's the fix sequence that worked for me: A) Shut down the MBP, disconnect the Firewire cable B) Boot the MBP, quit all applications, open Terminal C) sudo diskutil disableJournal / D) Wait a very long time for that to complete E) Shut down the MBP F) Connect the firewire cable, Boot the MBP with the T key down G) Wait for "Macintosh HD" to show up on the iMac H) Open a terminal on the iMac and diskutil info /Volumes/Macintosh\ HD\ 1 I) diskutil unmount /Volumes/Macintosh\ HD\1 (or just Apple-E it on the Finder desktop) Step H is a simple way to find out the device mount point you'll need for ddrescue. It would be even better if there was a way to turn off the automounting of firewire drives, but I haven't been able to find any (killing the automount process didn't do it, so I think this might be a Finder thing). 3) Errors can be about the software/firmware, not just the sectors. I've learned that in my case, each time I hit an error (reported in the system.log console as I/O error, with a 3 minute 45 second pause) all subsequent reads will report errors. My theory is that the initial error is caused by a bad sector, but the subsequent ones are not sector errors at all, but rather the drive being persnickety. Therefore, my procedure is: A) ddrescue -v -n -i 0G /dev/disk3s2 myimage.dmg myimage.log B) Turn on Activity Monitor, right click the Dock Icon, choose Dock Icon > Disk Activity C) When that flat-lines (confirmed by an I/O error in Console watching system.log), Ctrl-C ddrescue D) Be patient. It will take about 4 minutes for ddrescue to exit E) Power off MBP, repeat steps F-I above Start over at step A, but change 0G to 10G or 50G or 100G or whatever, to jump way past the bad sectors. I haven't finished this procedure for the whole drive yet, but my plan is that once I get the majority of the drive rescued, I can go back and fill in the gaps. One caution: When you jump way ahead, there is going to be a long, dramatic pause as ddrescue fills the .dmg file with zeros. The dock icon will show no green line, and a high red line. This will eventually pass, and you'll get back to the flat green (read) line with a pulsing red (write) line. That's all I have to share so far, but I'll follow up as I make more headway! -Joshua -- View this message in context: http://www.nabble.com/Mac-OS-X-Tips-tp15109010p15109010.html Sent from the Gnu - ddrescue mailing list archive at Nabble.com. _______________________________________________ Bug-ddrescue mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bug-ddrescue
