В настоящее время я проверяю наличие сбоев диска, используя настоящую мешанину проверки системного журнала на наличие ошибок файловой системы, ошибок raid-контроллера / HBA и активной записи файла на диск, проверки его содержимого и его удаления. Их результаты адаптируются к любым имеющимся у нас решениям для мониторинга, но, как правило, это неприятный способ делать что-то. XFS сообщает об ошибках иначе, чем ext4, zfs или что-то еще.
Я чувствую, что к настоящему времени должно существовать что-то вроде /sys/block/sdc/write_error_count
, счетчик, который будет увеличиваться каждый раз при сбое записи блока по любой причине. А read_error_count
аналог будет существовать и на этой стороне. Аналогичная вещь может существовать для файловых систем (в отличие от необработанных блочных устройств).
Есть ли что-нибудь подобное в Linux сейчас? Если нет, есть ли действительно канонический способ проверить наличие сбойного хранилища?
Как насчет smartmontools и особенно smartctl
команда? smartctl
сообщит вам статистику SMART с жесткого диска, и вы увидите количество ошибок, количество часов работы устройства и т. д.