Интерпретация значения Seagate SMART 188 в формате данных «Command Timeout»
Недавний
188 Command_Timeout -O--CK 100 099 000 - 4295032833
Если углубиться в этот вопрос, то этот билет Smartmontools.org предполагает, что другие накопители Seagate могут использовать это поле как три упакованных 2-байтовых целых числа, интерпретируемых как
[0:1] Command Timeout Occurred
[2:3] Command Timeout Occurred, command was in queue >5 seconds
[4:5] Command Timeout Occurred, command was in queue >7.5 seconds
Обратите внимание, что отправитель этого билета не указал источник этой интерпретации.
Как было предложено в билете, я использовал
188 Command_Timeout -O--CK 100 099 000 - 1 1 1
В базе данных дисков Smartmontools.org этот диск указан как
{ "Seagate IronWolf", // tested with ST3000VN007-2E4166/SC60, ST4000VN008-2DR166/SC60,
// ST6000VN001-2BB186/SC60, ST6000VN0033-2EE110/SC60, ST6000VN0041-2EL11C/SC61,
// ST8000VN0022-2EL112/SC61, ST10000VN0004-1ZD101/SC60,
// ST12000VN0007-2GS116/SC60, ST12000VN0008-2JH101/SC60
"ST(1|2|3|4|6|8|10|12)000VN00(0?[2478]|1|22|33|41)-.*",
"", "",
"-v 18,raw48,Head_Health "
"-v 200,raw48,Pressure_Limit "
"-v 240,msec24hour32"
},
Специалисты по обслуживанию протестировали этот диск и выявили несколько значений (18 200, 240), которые требуют специального форматирования, но не значение 188.
Страница Seagate «Как интерпретировать результаты диагностических утилит SMART?»указывает, что интерпретация их значений SMART является собственной собственностью
Помните, что эти сторонние программы не имеют собственного доступа к информации о жестком диске Seagate и поэтому часто предоставляют противоречивые и неточные результаты.
Вики -сайт Smartmontool для Seagate Drives не включает параметр 188.
В этом контексте существует ли другой источник, который мог бы предоставить авторитетную информацию по интерпретации этого значения данных? Если нет, я собираюсь использовать интерпретацию «raw16» и посмотреть, как эту информацию можно передать специалистам по обслуживанию базы данных диска.
Обновление: Я отправил это в список рассылки smartmontools, но не являюсь его участником, и это сообщение проходит модерацию. Глядя на их невыполненную работу и часто задаваемые вопросы, не похоже, что это будет включено в ближайшее время.
Я временно обновил свой код, чтобы проверить номер модели и добавить опцию локально для этого конкретного диска.
Обновление 2: удалены кавычки вокруг
while [[ ! -z "$1" ]]
do
DRIVE="$1"
shift
[[ -b "$DRIVE" ]] || { echo "'${DRIVE}' is not a block device"; continue; }
MODEL=$(sudo hdparm -i "$DRIVE" | sed -n '/Model/s/ Model=\(.*\), Fw.*/\1/p')
case "${MODEL}" in
"ST4000VN008-2DR166" ) SC_Opts="-v 188,raw16";;
esac
STATS=$(sudo smartctl -a ${SC_Opts} "${DRIVE}" | sed -n '
/5 Reallocated_Sector_Ct/s/^.\{87\}\([0-9]*\).*/REALOC=\1;/p
/9 Power_On_Hours/s/^.\{87\}\([0-9]*\).*/HRS=\1;/p
/184 End-to-End_Error/s/^.\{87\}\([0-9]*\).*/EEErr=\1;/p
/187 Reported_Uncorrect/s/^.\{87\}\([0-9]*\).*/RPTIncor=\1;/p
/188 Command_Timeout/s/^.\{87\}\([0-9]*\).*/CMDTO=\1;/p
/197 Current_Pending_Sector/s/^.\{87\}\([0-9]*\).*/PENDING_S=\1;/p
/198 Offline_Uncorrectable/s/^.\{87\}\([0-9]*\).*/OFL_UNCOR=\1;/p
/199 UDMA_CRC_Error_Count/s/^.\{87\}\([0-9]*\).*$/CRCE=\1;/p
/241 Total_LBAs_Written/s/^.\{87\}\([0-9]*\).*$/LBAW=\1;/p
/242 Total_LBAs_Read/s/^.\{87\}\([0-9]*\).*$/LBAR=\1;/p
')
eval ${STATS}
...
1 ответ
Спецификация атрибута Seagate SMART:http://t1.daumcdn.net/brunch/service/user/axm/file/zRYOdwPu3OMoKYmBOby1fEEQEbU.pdf .
3.11 Атрибут ID 188: счетчик времени ожидания команды
Нормализованный счетчик таймаутов команд = 100 — счетчик таймаутов команд.
Этот атрибут отслеживает количество тайм-аутов команды, определяемое прерыванием активной команды HRESET и COMRESET, SRST или другой командой.
Нормализованное значение вычисляется только в том случае, если количество команд находится в диапазоне от 10^3 до 10^4. CommandCount и ErroCount очищаются, когда количество команд достигает 10^4. Количество ошибок, используемое для вычисления нормализованного значения, не указывается в необработанном значении атрибута. Об этом сообщается в области информации о поставщике сектора атрибутов, байты 474:475.
Если счетчик таймаута команды > 99, отображается значение нормализации 1. В качестве особого случая начальное наихудшее значение установлено на 0xFD.
Необработанное использование
Необработанные значения [1–0] = общее количество таймаутов команд с максимальным удержанием FFFFh.
Необработанное [3–2] = общее количество команд с завершением > 5 секунд, включая команды > 7,5 секунд.
Необработанное [5–4] = общее количество команд с завершением > 7,5 секунд.
Итак 4295032833 -> HEX = 0x100010001. Я полагаю, 0x0001, 0x0001, 0x0001 = 1, 1, 1. Все хорошо.
РЕДАКТИРОВАТЬ: Сделал простой онлайн-калькулятор , который преобразует некоторые значения Seagate.