(this is a request for a "that's stupid", not a suggestion
of something people should do at this point)

An idea that's been floating around in my head, inspired
by the ZFS "scrubbing" idea: rather than build that "check
your data" process into the file system, just do something
periodically like this:

  # dd if=/dev/rsd0c of=/dev/null bs=1m

and repeat against all physical drives.  The logic being,
all hard drives have some kind of error detection logic
in them, at least a checksum of some kind on all data blocks.
See if you can read every block on the disk.  No errors, your
data might be intact.  Errors, it probably isn't (or won't
be in the future).  Crypto-grade integrity, probably not...
but probably quite sufficient for spotting most bad spots
on the disk.

So...I tried it against disks with mounted file systems and
softraid partitions on them.

It...seems to work. I did have one laptop with a softraid
encrypted drive that gave a nice, clear "Input/output error",
but I can't reproduce it (maybe it got locked out?  Seems
odd on a read, but ...

Is this sane?  is it safe to attempt to read all the blocks
on an entire 'c' partition of a disk that's doing "other
things" at the same time, including a layers of softraid?

Nick.

Reply via email to