Конкретно, в smartctl
выводе, как LifeTime(hours)
рассчитывается? Я предполагаю, что это одно из следующего:
Разница (в часах) между временем проведения теста и датой изготовления привода.
Разница (в часах) между временем проведения теста и датой первого включения накопителя.
Разница (в часах) между временем испытания (в пересчете на «часы работы привода») и общим количеством «часов работы привода».
*Под «часами работы привода» я подразумеваю общее количество часов, в течение которых привод был включен. (Аналогия: у двигателей самолетов нет одометров, как у автомобилей. Вместо этого они обычно показывают количество часов работы двигателей. Я использую термин «часы работы привода» для обозначения чего-то похожего, но для жестких дисков.)
Пример smartctl
вывода:
=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 22057 -
# 2 Short offline Completed without error 00% 22057 -
# 3 Extended offline Completed without error 00% 22029 -
# 4 Extended offline Completed without error 00% 21958 -
решение1
Если я правильно помню, это может варьироваться от привода к приводу.
Большинство брендов: После завершения тестирования на заводе-изготовителе загружается прошивка, которая начинает мониторинг при первом запуске накопителя пользователем.
Прошивка не отслеживает фактическое время. Она работает точно так же, как счетчик часов в самолете. Единственное отличие в том, что некоторые бренды могут проводить тестирование с активной прошивкой, поэтому совершенно новый диск может показывать 1-2 часа, тогда как другие будут показывать 0 (если только тест не займет больше часа).
Если вы запустите smartctl -A /dev/sdX
, заменив x на ваш диск, вы увидите атрибуты, которые сообщает ваш HDD. Есть атрибут Powered On Time, из которого берется это значение.
решение2
Этоявляетсято же самое, что и Power_On_Hours
, но значения могут отличаться на некоторых дисках. Например, у меня есть два диска, где LifeTime
есть uint16
и сбрасывается через 65535 часов.
sudo smartctl -A -l selftest /dev/sda | egrep '(Power_On|# 1)'
9 Power_On_Hours 0x0032 022 022 000 Old_age Always - 68380
# 1 Extended offline Self-test routine in progress 80% 2844 -
65535+2844 = 68379