all site content copyright © chris rue. all rights reserved. any reproduction, re-use or summarization of any kind without prior written consent is prohibited.
December 28, 2007

Apple Bites


I could go on and on about the big rainbow fruit from Cupertino, but I’m specifically talking about MacOS in this instance.

With all the recent brouhaha about Windows Home Server’s data corruption problem, anybody using a MacOS platform needs to watch out for its own data-destroying bug. Reported as far back as Panther (OSX 10.3) and still kicking in the Leopard release (OSX 10.5) this one will truly knock you on your butt if you’re not careful.

Here’s what’s up…

If at any time during a Move operation the destination location disappears, the source copy of the data being moved will be deleted, no matter whether the copy successfully finishes or not.

It’s a simple issue really.

Since a Move operation is actually a Copy followed by a Delete of the original source once the Copy is verified as successful, MacOS isn’t correctly verifying that the original Copy is successful before it executes the Delete against the original source. Doh!

And this issue affects any destination, local or network.

Of course, destinations never have a problem, right? Heck, having a flaky USB port on your machine can cause a directly connected external drive to disconnect. Or a power flicker, when your drive isn’t on battery power as well. Or a network hiccup.

Yeah…those things never happen.

Reportedly, the 10.5.1 update fixes this data loss issue. Which is a good good thing.

But here’s a better suggestion for avoiding this issue, both now and in the future, on any platform whatsoever…



I never ever EVER use Move. I always always ALWAYS use Copy, followed by a manual Delete of my own volition.

Why? I quit using Move operations sometime around 1992, thanks to being burned by some data loss caused by a flaky SCSI connection on…you guessed it…a Mac!

This habit has served me very well in my career as an IT professional.

Using a Move doesn’t allow you to complete one very important step that can mean all the difference in the continued health and well-being of your data.

After every copy of data that really matters, I always do a compare of the source and destination. Only after I see that the byte and file counts match do I complete a Delete of the source.

Sure, those counts might not be totally accurate. Something else could be causing them to match. But it’s a fair bet that something bad wrong in the architecture of your system (bad cable, NIC, driver, OS, drive, etc.) will cause enough error to keep those compare values from matching.

If you absolutely positively must verify the contents of a large data move match on both sides, then you can always run an MD5 hash of the source and destination copies. Just expect that running those hashes can takes an insane amount of time. As in days, kiddos.

This little habit of mine wouldn’t necessarily guard against a malicious data mangling virus…

But that’s what you have A/V for, right?

Anyway, to all my buds using the Mac platform who think it’s all about thinking about thinking different

Welcome to the Funcave!

|| posted by chris under clueless, rx, thumbs down || comments (0) || ||

no comments »

rss feed for comments on this post. | trackback:

leave a comment

XHTML ( You can use these tags): <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> .