Since the laptop comes with a 12M manufacturer warranty, we called ASUS. After having us try a few different troubleshooting efforts, they agreed that there seems to be a hardware problem and asked us to ship it in. My dad had some lectures and presentations on the machine that were not backed up (yeah, yeah - always backup).
Anyway, ASUS said that they would not backup the data for us, and we were free to try to salvage it before sending the machine in for repair. Hence, this little home project.
First, we purchased a USB Adapter for IDE/SATA.
Newegg is absolutely awesome, I ordered the product on a Saturday with regular (free) shipping and received it in hand on Wednesday!
Next I needed to open the laptop and pull out the hard drive. It wasn't too obvious as there were a number of screws on the bottom. I found many online videos on how to do this for Dell. A friend tells me that HP makes little images next to the screws to indicate what would open up with those screws. I found similar indicators on my Lenovo. However, ASUS wasn't that easy. Now, I did see some images next to four screws. Hard to say what it is, here is a (pretty bad) picture:

Anyway, first I took out the battery. Then I unscrewed these four. Finally, there was a fifth screw right next to the battery compartment that was holding this panel in. On taking this out, I was able to slide this panel out. And, here is what the inside looks like:

Another four screws allowed me to pull out the SATA HDD. Closer view of the HDD Compartment:

Next step, connecting the adapter. This was fairly straightforward. Connect the SATA power cable to the drive. Keep it powered down until the data cable is connected to the Rosewill USB cable. Turn the power on, connect the USB to another laptop (a Lenovo T60). Since the HDD has multiple partitions, each one is mounted as a separate drive letter in my Windows laptop. Here is the external HDD connected via the adapter:
Final step, get the files. First I tried using simple Windows Explorer, it would fail without copying even a single file. I was able to copy some individual files, but it would fail on others. So much for the GUI, time to use the commandline. I tried the regular windows 'copy' command, it was a step better than Windows Explorer. It would copy files until it hit one that it could not read. But then it would exit. Not too good. played around with xcopy and it didn't seem to be smart enough. I wanted a tool that I could re-run in case of a failure, and expect it to pick up from the point of failure. Enter Robocopy, this is part of the Windows Resource Kit.
This is smart, the timestamp and size of a file in the source/destination match, it will not try to copy it again. It is apparently an enhanced version of xcopy. Here is the command I used:
robocopy c:\users\mk\desktop "C:\papa laptop backup" /s /zb /r:0 /LOG+:"v:\backupLaptop.log"
I set the retries to 0 (/r:0) as the default is 1 million! I setup a log file as well.
I found that certain files were causing it to really struggle, these were bitmaps and some videos. We didn't really need those, so I setup a filter to remove them:
robocopy c:\users\mk\desktop "C:\papa laptop backup" /s /zb /r:0 /LOG+:"v:\backupLaptop.log" /V /XF *.VOB *.bmp
I also downloaded baretail to watch the logfile in real time. This is the equivalent of UNIX 'tail' for Windows. It was pretty popular amongst my ex-colleagues at Vamosa. Not sure, though, that the GUI adds much value. I should go back to my Cygwin emulator.
Either way, tail/Baretail is a bit of an overkill in this case, as robocopy has an option to TEE output to the screen:
robocopy c:\users\mk\desktop "C:\papa laptop backup" /s /zb /r:0 /LOG+:"v:\backupLaptop.log" /V /TEE /XF *.VOB *.bmp
Here is a screenshot of robocopy and baretail in action:

As you can see, every so often, a file will fail copy due to an I/O error. At least we have the log file to know what we lost.
And there we go, data saved :-)


