Storage – SMART Shows Unreadable Sectors, Btrfs Scrubs Are Clean

btrfssmartstorage

I have a pair of disks in RAID1 formatted with btrfs.

The disks go through periodic scrubbing and I get notified with the results. They've been running great for about 2-3 years with no issues.

However, I've recently added smartd to my installation, and it instantly complained about a small number of unreadable sectors in one of the drives:

Device: /dev/sdc [SAT], 4 Currently unreadable (pending) sectors

I ran a scrub on that drive which found and corrected the same number of errors, but the smart error message doesn't go away. Subsequent scrubs on the same disk show no errors.

I'm not sure which of these tools is the most accurate – is smartd showing a false positive, or is btrfs missing bad sectors, or perhaps I'm misunderstanding the results?

What would be the best way to verify the health of the disk?

Thanks!

Best Answer

Shodanshok's answer is excellent, but to answer your literal question:

What would be the best way to verify the health of the disk?

Do a full write on it. The disk's firmware has marked those sectors as pending reallocation. It can do this when they're written to. This will either 'fix' the sector, or generate reallocated sectors, which you can also see in SMART.

You could then theoretically do a latency read scan on the disk. This is often telling of how reliable sectors are.

And in practical terms, it may be time to replace the disk. This is one of those preludes to failure that I watch for. Another is 'ata exception' in the syslogs. They typically happen before mdadm (or RAID controllers) kicks drives, and I suspect btrfs is similar (though I have no experience).