On Mar 26, 2012, at 8:29 PM, Nathan Sims wrote:

> An external 1G FW800 drive was getting occasional disk I/O errors when Time 
> Machine did its backups of it, so I bought a new 3G FW800 drive and used Disk 
> Utility to duplicate the original drive's contents onto the new. I looked and 
> saw that Disk Utility spawned an asr process to do the copy. When it finished 
> I ejected the old drive, renamed the new drive, and started Time Machine.
> 
> Time Machine proceeded to backup the new drive's entire contents! Ugh. I 
> thought asr would create a faithful duplicate of the original and TM would 
> just continue on with its incremental backups, like nothing had happened. Why 
> did TM act like it saw all new files on the drive, and back everything up 
> again? Now my TM drive is full...

Once you're getting I/O errors from a disk that the operating system is 
informing you of, you already have data corruption - of who knows what. I would 
consider the original drive data suspect, and restored from the TM backup. Even 
the TM backup data is suspect. HFS Plus defers entirely to the hard drive's 
error detection and correction, which it performs silently. At the point it's 
no longer silent, it's no longer correcting.

And this is why in my view it is unconscionable that only server has SMART 
support included. It should be on every copy of client. It should run a weekly 
long test by default. It should report significant statistical changes to the 
user, by default, not merely the health pass/fail status. I bet if you 
installed smartmontools and ran smartctl -a /dev/diskX that you'd see a high 
raw read error rate, reallocated sector, pending sector and other such pre-fail 
and old-age errors that would have given prior warning for action.

I would personally embargo that Time Machine disk, and start a new one, so that 
the old one's contents aren't being deleted to make room for more data. The old 
deleted data might be good. The new data replacing it has a much higher chance 
of being bad. Then if you encounter a corrupt file, you have some possibility 
of regressing to an earlier state where maybe the file was good.

To answer your question, asr does sector copies only if you've booted from 
another volume, such that the state of the source volume you're copying is not 
changing. If you've booted from the source disk, its state changes constantly 
so a sector copy isn't possible, it has to do a file copy. The resulting volume 
has a different GUID, and a new file system.

And FWIW, you really should do a SMART conveyance test at a minimum before 
putting a new drive into use. An offline test and extended self-test should 
also be run. The conveyance test only takes 5 minutes. The offline test 
requires that you're booted from another disk otherwise it's usually aborted 
quickly and early on. The extended self-test is background, so you can be 
booted from the disk while running it, and you can work normally. Any pending 
sector errors can be cleared by zeroing the drive. I use dd from the command 
line because it's faster than what Disk Utility does... like this:

dd if=/dev/zero of=/dev/rdiskX bs=1m

Where X is the disk device number.


Chris Murphy
_______________________________________________
MacOSX-admin mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/macosx-admin

Reply via email to