Подключение к Узлу будет происходить не через zabbix Агента (zabbix_get) , а через SSH.
Агент и траппер zabbix используется только не посредственно на самом заббикс сервере.
Данный шаблон разрабатывался для NAS D-Link dns-340l так как по snmp не было возможности проверять smart.
В зависимости от версий smartmontools Опции могут меняться видимо на NAS более старая версия и пришлось изменить следующие опции:
smartctl --scan-open заменена на ls -l /dev/
smartctl -x /dev/ заменена на smartctl -Hi /dev/
smartctl -x /dev/ заменена на smartctl -AHi /dev/
Так как скрипт выполняется более 30 секунд получаем ошибку timeout , по этому данные будет отправлять траппером.
СКАЧАТЬ Команды проверки
Код: Выделить всё
./smartctl-lld-ssh.sh 192.168.xxx.xxx 22 "discoveryhdd" "" "Логин" "Пароль" "Имя узла"
./smartctl-lld-ssh.sh 192.168.xxx.xxx 22 "info" "" "Логин" "Пароль" "Имя узла"
./external-nowait.sh smartctl-lld-ssh.sh 192.168.xxx.xxx 22 "discoveryhdd" "" "Логин" "Пароль" "Имя узла"
./external-nowait.sh smartctl-lld-ssh.sh 192.168.xxx.xxx 22 "info" "" "Логин" "Пароль" "Имя узла"
apt-get install expect
Скрипт smartctl-lld-ssh.sh
Код: Выделить всё
#!/bin/bash
# 2023.03.17 Артём Андреевич Мамзиков
# URL https://diyit.ru/viewtopic.php?t=1944
# Скрипт мониторинга HDD с LLD для Zabbix (серверный вариант) через ssh
# Авто обнаружение дисков
# Объявим входные переменные(variable) и если входная переменная пустая задаем дефолтные настройки для некоторых переменных
IP=$1
PORT=${2:-22}
BLOCSCRIPT=$3
#DISKNAME=$4
# Переменные логина пароля
USER=$5
PASS=$6
HOSTHOST=$7
IPZBXSERVER=localhost
# Подключение к ssh, выполнение команды получение данных с удаленного узла
function sshremote (){
infodisk=$(/usr/bin/expect<<EOF
# spawn - вызов программы
# expect - ожидание вывода запущенной программой строки (дословно: ожидаем, что скажет выполняемая программа);
# send - передача данных или команд в вызванную программу (выполняется так, как будто вы сами набираете команды в консоли)
# close - завершение сценария
set timeout 3
# Подключаемся по ssh
spawn ssh -oHostKeyAlgorithms=+ssh-dss -p $PORT $USER@$IP
# Если выходит запрос подтверждаем yes
expect {
"(yes/no)?*" {
send "yes\r"
}
}
# Ждем строку запроса пароля password:
expect "word:"
# Водим пароль
send "$PASS\r"
# Ждем строку для ввода команд от root #
expect "#*"
expect "#*"
# Получаем список дисков
send "$1\r"
# Время ожидания установки
set timeout 1
# Проверяем что перешли в папку root
expect "#*"
expect eof
# Выполняем выход из сеанса
send "exit\r"
EOF
)
#exit 1
}
# Получение инфы (по ключевым словам)
searchp="Model Family:|Device Model:|Serial Number:|LU WWN Device Id:|Firmware Version:|User Capacity:|Sector Size:|Rotation Rate:|ATA Version is:|SATA Version is:|SMART overall-health self-assessment test result:"
IFS=$'\n'
# (IFS оболочка считает, что пробел является границей слов делает пробелы между слов $* - отбрасывает символы и границы слов \n – это escape-последовательность для новой строки (переводится в новую строку)
if [[ $BLOCSCRIPT = "discoveryhdd" ]]
then
echo "Запущен блок discoveryhdd"
# Запускаем команду smartctl --scan-open |и ищем строки содержащие /dev/sd и передаем всё в переменную get
#get=`zabbix_get -s $IP -p $PORT -k system.run["smartctl --scan-open"] | grep "/dev/sd"`
# Получим список Дисков с удаленного Узла по ssh
listdisk="ls -l /dev | grep -E 'sd|hd'|awk '{print $\(NF\)}'"
# Вызовем блок подключения shh и выполним команды
sshremote "$listdisk"
# Полученный ответ
get=$(echo "${infodisk}"|sed '1,/^\/ # ls -l/d'|sed -e '/\/ #/d'|egrep -owi '[a-z]+')
# Запускаем Цикл из переменной get
for hdd in $get
do
# получаем переменную DISK = Данные переменной get| ищем строки содержащие /dev/sd | вывести значение после /dev/ | оставляем первые 3 значение остальное убираем
#DISKID=`echo $hdd | grep "/dev/sd" | sed "s/\/dev\///" | cut -c 1-3`
DISKID=`echo $hdd`
# После того как мы получили переменные для DISKID подставляем их (пример sda sdb)
# Включен SMART? на Дисках с удаленного Узла по ssh
statussmart=`echo "smartctl -i /dev/$hdd|egrep -i 'SMART support is:|Rotation Rate:'"`
# Вызовем блок подключения shh и выполним команды
sshremote "$statussmart"
# Полученный ответ
smarton=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d')
# Проверяем что включен smart на данном диске и диск ssd ищем строки SMART support is: Enabled и Rotation Rate: Solid State Device если строки найдены, на выходе получим их ответ не пустой условие не выполняется != "" , продолжим выполнение скрипта.
# Если хотя бы 1 строка не найдена ответ будет пустым, условие != "" выполняется скрипт будет завершен.
# В условии запрашиваем данные диска smartctl -i /dev/***|выбираем 2 строки| удаляем перенос строки делаем 1 строкой| удаляем весь вывод если есть строка Solid State Device и завершение скрипта, если строки нет выполняем дальше| проверка что смарт включен, если строка найдена продолжаем.
# if [[ `zabbix_get -s $IP -p $PORT -k system.run["smartctl -i /dev/$DISKID"]|grep -E "SMART support is:|Rotation Rate:"|tr -d "\r\n"|sed '/.*Rotation Rate:.*Solid State Device.*/d' | grep "SMART support is: Enabled"` != "" ]]
if [[ `echo "${smarton}"|grep -E "SMART support is:|Rotation Rate:"|tr -d "\r\n"|sed '/.*Rotation Rate:.*Solid State Device.*/d' | grep "SMART support is: Enabled"` != "" ]]
then
# Подстановка имен диска sda sdb и т.д.
#DISKN=$DISKN"$SEP\n{\"{#IDNUM0}\":\"$DISKID\"}"
#SEP=", "
# Поддерживаемые атрибуты на Дисках с удаленного Узла по ssh
attrsmart=`echo "smartctl -A /dev/$hdd|sed -r 's/^ *//g'|egrep -io '\(^\[0-9\]+\[: :\]+\[A-Z_-\]+\)'"`
# Вызовем блок подключения shh и выполним команды
sshremote "$attrsmart"
# Полученный ответ
IDATR=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d'|tr -d '\r')
# Запросим поддерживаемые атрибуты диском, для создания элементов |удалить пробелы вначале |строки содержащие в начале цифры первый столбец и второй с помощью регулярки для сохранения количества пробелов
# IDATR=`zabbix_get -s $IP -p $PORT -k system.run["smartctl -A /dev/"${DISKID}""]|sed -r 's/^ *//g'|grep -Eo "(^[0-9]+\s+[A-Za-z_-]+)"`
for ATRIB in $IDATR
do
# Код ID Диска | только числовое значение
IDNUM=$(echo $ATRIB|awk '{print $1}'|egrep -o '[0-9]+')
# Атрибут кода диска и id $ATRIB
# Собираем вывод
DISKN=$DISKN"$SEP\n{\"{#IDNUM$IDNUM}\":\"$DISKID:$IDNUM\", \"{#ATRIB}\":\"$DISKID:$ATRIB\"}"
SEP=", "
done
# Инфо о Дисках с удаленного Узла по ssh
infosmart=`echo "smartctl -Hi /dev/$hdd"`
# Вызовем блок подключения shh и выполним команды
sshremote "$infosmart"
# Полученный ответ
infodiskx=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d'|grep -aiE "$searchp"|grep -o '^[^:]*:')
# Информация о диске выбор строк |Поиск строк| вывод до двоеточия
# infodiskx=$(zabbix_get -s $IP -p $PORT -k system.run["smartctl -x /dev/"${DISKID}""]|grep -aE "$searchp"|grep -o '^[^:]*:')
for infodiska in $(echo "${infodiskx}"|tr -d '\r')
do
# Чтоб не создавать 2 правило обнаружения, сделаем зависимость на 1 элемент и приведем макрос к единому виду {#IDNUM***}
ACCORDANCE="" # сброс переменной в цикле
# верхний регистр для макроса lld
infodiskz=$(echo $infodiska|tr [:lower:] [:upper:])
case $infodiskz in
*"MODEL FAMILY:"*)
ACCORDANCE="9000"
;;
*"DEVICE MODEL:"*)
ACCORDANCE="9001"
;;
*"SERIAL NUMBER:"*)
ACCORDANCE="9002"
;;
*"LU WWN DEVICE ID:"*)
ACCORDANCE="9003"
;;
*"FIRMWARE VERSION:"*)
ACCORDANCE="9004"
;;
*"USER CAPACITY:"*)
ACCORDANCE="9005"
;;
*"SECTOR SIZE:"*)
ACCORDANCE="9006"
;;
*"ROTATION RATE:"*)
ACCORDANCE="9007"
;;
"ATA VERSION IS:"*)
ACCORDANCE="9008"
;;
*"SATA VERSION IS:"*)
ACCORDANCE="9009"
;;
*"SMART OVERALL-HEALTH SELF-ASSESSMENT TEST RESULT:"*)
ACCORDANCE="9010"
;;
# *":"*)
# ACCORDANCE="9011"
# ;;
esac
DISKN=$DISKN"$SEP\n{\"{#IDNUM$ACCORDANCE}\":\"$DISKID:$infodiska\"}"
SEP=", "
done
# Список имен диска в конце вывода
# DISKNAME=$DISKNAME"$SEP\n{\"{#DISKNAME}\":\"$DISKID\"}"
JSON="${DISKN}"
fi
done
# Список имен диска в конце вывода
#JSON="${DISKN}""${DISKNAME}"
# Выводим результат в json
JSON="["$JSON"\n]"
#echo -e "${JSON}"
outsshhdd=$(echo -e "${JSON}")
zabbix_sender -z $IPZBXSERVER -p 10051 -s "${HOSTHOST}" -k smartlldsshhdd -o "${outsshhdd}"
fi
if [[ $BLOCSCRIPT = "discoveryssd" ]]
then
echo "Запущен блок discoveryssd"
# Запускаем команду smartctl --scan-open |и ищем строки содержащие /dev/sd и передаем всё в переменную get
#get=`zabbix_get -s $IP -p $PORT -k system.run["smartctl --scan-open"] | grep "/dev/sd"`
# Получим список Дисков с удаленного Узла по ssh
listdisk="ls -l /dev | grep -E 'sd|hd'|awk '{print $\(NF\)}'"
# Вызовем блок подключения shh и выполним команды
sshremote "$listdisk"
# Полученный ответ
get=$(echo "${infodisk}"|sed '1,/^\/ # ls -l/d'|sed -e '/\/ #/d'|egrep -owi '[a-z]+')
# Запускаем Цикл из переменной get
for hdd in $get
do
# получаем переменную DISK = Данные переменной get| ищем строки содержащие /dev/sd | вывести значение после /dev/ | оставляем первые 3 значение остальное убираем
#DISKID=`echo $hdd | grep "/dev/sd" | sed "s/\/dev\///" | cut -c 1-3`
DISKID=`echo $hdd`
# После того как мы получили переменные для DISKID подставляем их (пример sda sdb)
# Включен SMART? на Дисках с удаленного Узла по ssh
statussmart=`echo "smartctl -i /dev/$hdd|egrep -i 'SMART support is:|Rotation Rate:'"`
# Вызовем блок подключения shh и выполним команды
sshremote "$statussmart"
# Полученный ответ
smarton=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d')
# После того как мы получили переменные для DISKID подставляем их (пример sda sdb)
# Проверяем что включен smart на данном диске и диск ssd ищем строки SMART support is: Enabled и Rotation Rate: Solid State Device если строки найдены, на выходе получим их ответ не пустой условие не выполняется != "" , продолжим выполнение скрипта.
# Если хотя бы 1 строка не найдена ответ будет пустым, условие != "" выполняется скрипт будет завершен.
# В условии запрашиваем данные диска smartctl -i /dev/***|выбираем 2 строки| удаляем перенос строки делаем 1 строкой| через условие И смотрим что обе строки есть
# if [[ `zabbix_get -s $IP -p $PORT -k system.run["smartctl -i /dev/$DISKID"] |grep -E "SMART support is:|Rotation Rate:"|tr -d "\r\n"| grep -E "SMART support is:\s+Enabled" |grep -E "Rotation Rate:\s+Solid State Device"` != "" ]]
if [[ `echo "${smarton}"|grep -E "SMART support is:|Rotation Rate:"|tr -d "\r\n"| grep -E "SMART support is:\s+Enabled" |grep -E "Rotation Rate:\s+Solid State Device"` != "" ]]
then
# Подстановка имен диска sda sdb и т.д.
#DISKN=$DISKN"$SEP\n{\"{#IDNUM0}\":\"$DISKID\"}"
#SEP=", "
# Поддерживаемые атрибуты на Дисках с удаленного Узла по ssh
attrsmart=`echo "smartctl -A /dev/$hdd|sed -r 's/^ *//g'|egrep -io '\(^\[0-9\]+\[: :\]+\[A-Z_-\]+\)'"`
# Вызовем блок подключения shh и выполним команды
sshremote "$attrsmart"
# Полученный ответ
IDATR=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d'|tr -d '\r')
# Запросим поддерживаемые атрибуты диском, для создания элементов |удалить пробелы вначале |строки содержащие в начале цифры первый столбец и второй с помощью регулярки для сохранения количества пробелов
# IDATR=`zabbix_get -s $IP -p $PORT -k system.run["smartctl -A /dev/"${DISKID}""]|sed -r 's/^ *//g'|grep -Eo "(^[0-9]+\s+[A-Za-z_-]+)"`
for ATRIB in $IDATR
do
# Код ID Диска | только числовое значение
IDNUM=$(echo $ATRIB|awk '{print $1}'|egrep -o '[0-9]+')
# Атрибут кода диска и id $ATRIB
# Собираем вывод
DISKN=$DISKN"$SEP\n{\"{#IDNUM$IDNUM}\":\"$DISKID:$IDNUM\", \"{#ATRIB}\":\"$DISKID:$ATRIB\"}"
SEP=", "
done
# Инфо о Дисках с удаленного Узла по ssh
infosmart=`echo "smartctl -Hi /dev/$hdd"`
# Вызовем блок подключения shh и выполним команды
sshremote "$infosmart"
# Полученный ответ
infodiskx=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d'|grep -aiE "$searchp"|grep -o '^[^:]*:')
# Информация о диске выбор строк |Поиск строк| вывод до двоеточия
# infodiskx=$(zabbix_get -s $IP -p $PORT -k system.run["smartctl -x /dev/"${DISKID}""]|grep -aE "$searchp"|grep -o '^[^:]*:')
for infodiska in $(echo "${infodiskx}"|tr -d '\r')
do
# Чтоб не создавать 2 правило обнаружения, сделаем зависимость на 1 элемент и приведем макрос к единому виду {#IDNUM***}
ACCORDANCE="" # сброс переменной в цикле
# верхний регистр для макроса lld
infodiskz=$(echo $infodiska|tr [:lower:] [:upper:])
case $infodiskz in
*"MODEL FAMILY:"*)
ACCORDANCE="9000"
;;
*"DEVICE MODEL:"*)
ACCORDANCE="9001"
;;
*"SERIAL NUMBER:"*)
ACCORDANCE="9002"
;;
*"LU WWN DEVICE ID:"*)
ACCORDANCE="9003"
;;
*"FIRMWARE VERSION:"*)
ACCORDANCE="9004"
;;
*"USER CAPACITY:"*)
ACCORDANCE="9005"
;;
*"SECTOR SIZE:"*)
ACCORDANCE="9006"
;;
*"ROTATION RATE:"*)
ACCORDANCE="9007"
;;
"ATA VERSION IS:"*)
ACCORDANCE="9008"
;;
*"SATA VERSION IS:"*)
ACCORDANCE="9009"
;;
*"SMART OVERALL-HEALTH SELF-ASSESSMENT TEST RESULT:"*)
ACCORDANCE="9010"
;;
# *":"*)
# ACCORDANCE="9011"
# ;;
esac
DISKN=$DISKN"$SEP\n{\"{#IDNUM$ACCORDANCE}\":\"$DISKID:$infodiska\"}"
SEP=", "
done
# Список имен диска в конце вывода
# DISKNAME=$DISKNAME"$SEP\n{\"{#DISKNAME}\":\"$DISKID\"}"
JSON="${DISKN}"
fi
done
# Список имен диска в конце вывода
#JSON="${DISKN}""${DISKNAME}"
# Выводим результат в json
JSON="["$JSON"\n]"
#echo -e "${JSON}"
outsshssd=$(echo -e "${JSON}")
zabbix_sender -z $IPZBXSERVER -p 10051 -s "${HOSTHOST}" -k smartlldsshssd -o "${outsshssd}"
fi
# Получение информации о дисках
if [[ $BLOCSCRIPT = "info" ]]
then
echo "Запущен блок info"
# Запускаем команду smartctl --scan-open |и ищем строки содержащие /dev/sd и передаем всё в переменную get
#get=`zabbix_get -s $IP -p $PORT -k system.run["smartctl --scan-open"] | grep "/dev/sd"`
# Получим список Дисков с удаленного Узла по ssh
listdisk="ls -l /dev | grep -E 'sd|hd'|awk '{print $\(NF\)}'"
# Вызовем блок подключения shh и выполним команды
sshremote "$listdisk"
# Полученный ответ
get=$(echo "${infodisk}"|sed '1,/^\/ # ls -l/d'|sed -e '/\/ #/d'|egrep -owi '[a-z]+')
# Запускаем Цикл из переменной get
for hdd in $get
do
# получаем переменную DISK = Данные переменной get| ищем строки содержащие /dev/sd | вывести значение после /dev/ | оставляем первые 3 значение остальное убираем
#DISKID=`echo $hdd | grep "/dev/sd" | sed "s/\/dev\///" | cut -c 1-3`
DISKID=`echo $hdd`
# После того как мы получили переменные для DISKID подставляем их (пример sda sdb)
# Включен SMART? на Дисках с удаленного Узла по ssh
statussmart=`echo "smartctl -i /dev/$hdd|egrep -i 'SMART support is:|Rotation Rate:'"`
# Вызовем блок подключения shh и выполним команды
sshremote "$statussmart"
# Полученный ответ
smarton=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d')
# Проверяем что включен smart на данном диске ищем строку SMART support is: Enabled если ее нет ничего не выводим, при поиске по шаблону
#внутри [!=] сравнение строк SMART support is: Enabled = SMART support is: Enabled выполняется передаем дальше.
# if [[ `zabbix_get -s $IP -p $PORT -k system.run["smartctl -i /dev/$DISKID"] | grep "SMART support is: Enabled"` != "" ]]
if [[ `echo "${smarton}"|grep -E "SMART support is:|Rotation Rate:"|tr -d "\r\n"|sed '/.*Rotation Rate:.*Solid State Device.*/d' | grep "SMART support is: Enabled"` != "" ]]
then
# Инфо о Дисках с удаленного Узла по ssh
infosmartp=`echo "smartctl -AHi /dev/$hdd"`
# Вызовем блок подключения shh и выполним команды
sshremote "$infosmartp"
# Полученный ответ
atrbp=$(echo "${infodisk}"|sed '1,/^\/ # smartctl/d'|sed -e '/\/ #/d')
# atrbp=`zabbix_get -s $IP -p $PORT -k system.run["smartctl -x /dev/$DISKID"]`
# Выбор блока для смарт атрибутов| удаление пробелов вначале |в начале каждой строки добавим имя диска (для регулярки предобработки разных дисков)
attr=$(echo "${atrbp}"|sed -n '/SMART Attributes/,/General Purpose/p'|sed -r 's/^ *//g'|sed -e "s/^/$DISKID:/")
# Выбор блока информации
info=$(echo "${atrbp}"|sed -n '/START OF INFORMATION SECTION/,/Local Time is/p'|sed -r 's/^ *//g'|sed -e "s/^/$DISKID:/")
# Строка состояние смарта
statussmart=$(echo "${atrbp}"|grep -aE "SMART overall-health self-assessment test result:"|sed -r 's/^ *//g'|sed -e "s/^/$DISKID:/")
# Суммируем данные для каждого диска
SMART=$SMART"\n"${attr}"\n"${info}"\n"${statussmart}""
fi
done
outsshsmartinfo=$(echo -e "${SMART}"|grep -aEv "^$")
zabbix_sender -z $IPZBXSERVER -p 10051 -s "${HOSTHOST}" -k smartlldsshinfo -o "${outsshsmartinfo}"
fi
external-nowait.sh
Код: Выделить всё
#!/bin/bash
# Скрипт переадресации, для внешней проверки когда время выполнения больше 30 секунд.(Timeout while executing a shell script. попадает в статус: Не поддерживается)
# Запустим другой скрипт с аргументами и не дожидаясь его завершения отправим статус что текущий скрипт выполнен.
# Получим текущий путь откуда запущен скрипт
#currentpath=$(readlink -f $0)
#currentpath="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/$(basename "${BASH_SOURCE[0]}")"
currentpath="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
#currentpath=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)
#bash "${currentpath}/${1}" "${2}" "${3}" "${4}" "${5}" "${6}" "${7}" "${8}" "${9}" "${10}" "${11}" "${12}" "${13}" "${14}" "${15}" >/dev/null & echo "Запущен скрипт: $1"
# Через заббикс агент (на самом заббикс сервере) не дожидаясь выполнения
zabbix_get -s 127.0.0.1 -p 10050 -k system.run["'${currentpath}/${1}' '${2}' '${3}' '${4}' '${5}' '${6}' '${7}' '${8}' '${9}' '${10}' '${11}' '${12}' '${13}' '${14}' '${15}'",nowait] >/dev/null & echo "Запущен скрипт: $1"
#script /dev/null
#screen -d -m -A -S "${currentpath}/${1}" "${2}" "${3}" "${4}" "${5}" "${6}" "${7}" "${8}" "${9}" "${10}" "${11}" "${12}" "${13}" "${14}" "${15}" >/dev/null & echo "Запущен скрипт: $1"
# Тест переменных в файл
#echo "bash "${currentpath}/${1}" \"${2}\" \"${3}\" \"${4}\" \"${5}\" \"${6}\" \"${7}\" \"${8}\" \"${9}\" \"${10}\" \"${11}\" \"${12}\" \"${13}\" \"${14}\" \"${15}\"" >> /tmp/nowait.txt
Шаблон Проверка HDD SSD Дисков по SMART по SSH Макросы
{$DISKNAME} - имя диска если нужно указать конкретное, по умолчанию пустое определяться все диски
{$HOST.PORTS} - Порт ssh по умолчанию 22
{$LOGINSSH} - Логин ssh
{$PASSSHH} - Пароль ssh
Элементы данных Обнаружение smart кодов проверки SSD дисков Запуск скрипта external-nowait.sh[smartctl-lld-ssh.sh,{HOST.CONN},{$HOST.PORTS},discoveryssd,{$DISKNAME},{$LOGINSSH},{$PASSSHH},{HOST.HOST}] 1h 0d Внешняя проверка SMART Жестких дисков SSD Деактивировано
Обнаружение smart кодов проверки дисков Запуск скрипта external-nowait.sh[smartctl-lld-ssh.sh,{HOST.CONN},{$HOST.PORTS},discoveryhdd,{$DISKNAME},{$LOGINSSH},{$PASSSHH},{HOST.HOST}] 1h 0d Внешняя проверка SMART Жестких дисков Активировано
Диск Поддерживаемые Атрибуты SMART информация SMARTCTL текст Запуск скрипта external-nowait.sh[smartctl-lld-ssh.sh,{HOST.CONN},{$HOST.PORTS},info,{$DISKNAME},{$LOGINSSH},{$PASSSHH},{HOST.HOST}] 1h 0d Внешняя проверка SMART Жестких дисков, SMART Жестких дисков SSD Активировано
Диск Поддерживаемые Атрибуты SMART информация SMARTCTL текст smartlldsshinfo 90d Zabbix траппер SMART Жестких дисков, SMART Жестких дисков SSD Активировано
Правила обнаружения Обнаружение smart кодов проверки дисков Прототипы элементов данных 274 Прототипы триггеров 27 Прототипы графиков Прототипы узлов сети smartlldsshhdd Zabbix траппер Активировано
Обнаружение smart кодов проверки SSD дисков Прототипы элементов данных 274 Прототипы триггеров 27 Прототипы графиков Прототипы узлов сети smartlldsshssd Zabbix траппер Активировано