Применимость: Linux, LSI
Слова для поиска:
Необходимо определить исправность диска с интерфейсом SAS
yum install lsscsi sg3_utils smartmontools
Загрузить модуль
modprobe sg
Список устройств можно получить различным способами
Получить список устройств
/usr/bin/lsscsi -g
parted -lm
Для диагностики неисправный диск лучше сконфигурировать как диск JBOD
Проверить наличие поддержки устройств JBOD:
megacli -AdpGetProp enablejbod -aALL
Включить поддержку JBOD:
megacli -AdpSetProp EnableJBOD 1 -aALL
Создать JBOD из диска:
megacli -PDMakeJBOD -PhysDrv[<ID шасси>:<Номер слота>] -a0
Например:
megacli -PDMakeJBOD -PhysDrv[252:4] -a0
Получить список id для использования в smartctl
megacli -PDlist -a0 | grep '^Device Id:'| awk '{print $3}'
Получить данные смарт по диску с ID=9
smartctl /dev/sda -d megaraid,9 -a
для диска с интерфейсом sata
smartctl /dev/sda -d sat+megaraid,9 -a
пример срипта для получения данных о всех дисках
#!/bin/sh for arg in `megacli -PDlist -a0 | grep '^Device Id:'| awk '{print $3}'` do smartctl /dev/sda -d sat+megaraid,${arg} -l devstat #smartctl /dev/sda -d sat+megaraid,${arg} -a done
Алгоритм простой - смотрим нужные счетчики, отправляем диск на форматирование, проверяем поверхность, снова смотрим счетчики на предмет роста ошибок. Для начала желательно собрать о «пациенте» побольше сведений. IMHO, лучший инструмент для этого - пакет smartmontools (в состав которого входит утилита smartctl):
Актуальность: 2014/06/30 08:55