Категорії
Solaris

Мониторинг жёстких дисков в Solaris без SMART’a

Нашёл в рассылке неплохой скрипт для проверки жёстких дисков на ошибки. Недостатки скрипта в том, что он даёт поверхностную информацию. Более полную можно вытащить из вывода команды

$ kstat -pm sderr

Скрипт ниже.

#!/bin/bash
# check disk in all pools for errors.
# partially failing (or slow) disks
# may result in horribly degradded 
# performance of zpools despite the fact
# the pool is still healthy

# exit codes
# 0 OK
# 1 WARNING
# 2 CRITICAL
# 3 UNKONOWN

OUTPUT=""
WARNING="0"
CRITICAL="0"
SOFTLIMIT="5"
HARDLIMIT="20"

LIST=$(zpool status | grep "c[0-9].*d0 " | awk '{print $1}')
    for DISK in $LIST 
    do  
        ERROR=$(iostat -enr $DISK | cut -d "," -f 4 | grep "^[0-9]")
        if [[ $ERROR -gt $SOFTLIMIT ]]
        then
            OUTPUT="$OUTPUT, $DISK:$ERROR"
            WARNING="1"
        fi
        if [[ $ERROR -gt $HARDLIMIT ]]
        then
            OUTPUT="$OUTPUT, $DISK:$ERROR"
            CRITICAL="1"
        fi
    done

if [[ $CRITICAL -gt 0 ]]
then
    echo "CRITICAL: Disks with error count >= $HARDLIMIT found: $OUTPUT"
    exit 2
fi
if [[ $WARNING -gt 0 ]]
then
    echo "WARNING: Disks with error count >= $SOFTLIMIT found: $OUTPUT"
    exit 1
fi

echo "OK: No significant disk errors found"
exit 0

2 коментарі “Мониторинг жёстких дисков в Solaris без SMART’a”

в строке
LIST=$(zpool status | grep “c[1-9].*d0 ” | awk ‘{print $1}’)
надо испаравить 1 на 0
grep “c[0-9].*d0 “

Залишити коментар до Alexander Golikov Скасувати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff