Почему количество циклов моего жесткого диска увеличивается так быстро?

Я хотел бы понять, почему SMART сообщает, что необработанное значение счетчика циклов загрузки моего жесткого диска HGST увеличивается, и если есть что-то, что я должен сделать, чтобы минимизировать это, чтобы продлить срок службы моего жесткого диска.

Я использую Debian Jessie на своем ноутбуке, и последние несколько часов я подключен к системе кондиционирования. У меня установлен smartctl:

# apt-get install smartmontools

Мой жесткий диск - HGST Travelstar:

$ sudo smartctl -a /dev/sda
...
Model Family:     HGST Travelstar 7K1000
Device Model:     HGST HTS721010A9E630
...

У меня есть сценарий, периодически собирающий некоторые статистические данные:

  9 Power_On_Hours          0x0012   089   089   000    Old_age   Always       -       5236
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       1598
193 Load_Cycle_Count        0x0012   070   070   000    Old_age   Always       -       305107

Мой сценарий собирает эти значения и сохраняет их в файле, чтобы я мог построить их с течением времени с помощью gnuplot:

Timestamp,PowerOnHoursValue,PowerOnHoursRawValue,PowerOnHoursWorst,PowerOnHoursThreshold,PowerCycleCountValue,PowerCycleCountRawValue,PowerCycleCountWorst,PowerCycleCountThreshold,LoadCycleCountValue,LoadCycleCountRawValue,LoadCycleCountWorst,LoadCycleCountThreshold
2017-06-10T11:02:18,089,5235,089,000,099,1598,099,000,070,304747,070,000
2017-06-10T11:17:01,089,5235,089,000,099,1598,099,000,070,304795,070,000
2017-06-10T12:17:01,089,5236,089,000,099,1598,099,000,070,305195,070,000
2017-06-10T12:27:03,089,5236,089,000,099,1598,099,000,070,305304,070,000

У меня нет cmd_line опция установлена ​​в моем /etc/hdparm.conf настройка файла hdparm возможность настроить время замедления; и у меня нет никаких -e apm опция установлена ​​в моем /etc/smartd.conf файл.

Я использую MATE, но я не уверен, есть ли у него какие-либо параметры конфигурации, установленные для времени замедления, кроме флажка " Вращать жесткие диски при возможности" в разделе " Система"> "Установки"> "Управление питанием". (Кстати, в настоящее время он не отмечен при включении питания переменного тока и проверен при включении питания от батареи.

Примерно с 11:05 до 12:00 я оставил свой ноутбук в покое, но не переключил его в режим ожидания или сна; он все еще был включен с заблокированным экраном.

В 12:00 я начал использовать его снова и был у клавиатуры до 12:27 вечера.

Вот мои текущие настройки APM:

$ sudo smartctl --get=apm /dev/sda
...
APM level is:     128 (minimum power consumption without standby)

$ sudo hdparm -I /dev/sda | grep level
    Advanced power management level: 128

$ sudo hdparm -B /dev/sda

/dev/sda:
 APM_level  = 128

По описанию -S возможность hdparm"128" означает, что тайм-аут (время ожидания) для накопителя составляет 128*5=640 секунд или чуть более 10 минут, если я правильно понял.

Обновление: я отключил APM на диске, отредактировав мой /etc/smartd.conf и меняется -e apm,241 в -e apm,off, а затем перезапустить smartmontools.

Похоже, это помогло остановить увеличение:

Timestamp,PowerOnHoursValue,PowerOnHoursRawValue,PowerOnHoursWorst,PowerOnHoursThreshold,PowerCycleCountValue,PowerCycleCountRawValue,PowerCycleCountWorst,PowerCycleCountThreshold,LoadCycleCountValue,LoadCycleCountRawValue,LoadCycleCountWorst,LoadCycleCountThreshold
2017-06-10T11:02:18,089,5235,089,000,099,1598,099,000,070,304747,070,000
2017-06-10T11:17:01,089,5235,089,000,099,1598,099,000,070,304795,070,000
2017-06-10T12:17:01,089,5236,089,000,099,1598,099,000,070,305195,070,000
2017-06-10T12:27:03,089,5236,089,000,099,1598,099,000,070,305304,070,000
2017-06-10T13:17:01,089,5237,089,000,099,1598,099,000,070,305585,070,000
2017-06-10T14:17:01,089,5238,089,000,099,1599,099,000,070,305864,070,000
2017-06-10T14:59:17,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T14:59:24,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:00:05,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:01:06,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:02:08,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:03:09,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:04:10,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:05:11,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:05:26,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:15:27,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:17:01,089,5238,089,000,099,1600,099,000,070,305868,070,000

Если ни у кого нет идей получше, то следующее, что я могу попробовать, это поиграться со значением 241, чтобы увидеть, как это меняет дело. Согласно hdparm справочная страница:

  • 0: таймауты отключены
  • 1..240: кратно 5 секундам, тайм-ауты 5 с.20 м
  • 241..251: 1..11 единицы по 30 минут, время ожидания 30м..5.5ч
  • 252: 21-минутный тайм-аут
  • 253: установленный поставщиком период ожидания 8 ч.12 ч.
  • 254: зарезервировано
  • 255: 21 минута плюс 15 секунд

Я хотел 241 для своего ноутбука специально для 30-минутного тайм-аута, поэтому я ожидал, что число циклов загрузки будет увеличиваться на 1 не менее, чем каждые 30 минут; однако, кажется, что я наблюдал увеличение количества в 300-400 раз в час до того, как отключил APM, что в среднем составляло бы 5-7 раз в минуту или один раз каждые 8-12 секунд.

Пожалуйста, поправьте меня, если я неправильно их интерпретирую.

Обновление: я только взял ноутбук и вынул его из Suspend. В последнем обновлении я никогда не проверял уровень APM после перезапуска smartmontools, Я сделаю это на этот раз.

С момента выхода из режима ожидания я заметил, что число моих циклов увеличилось только на 1, так как мой ноутбук перешел в режим ожидания, а теперь вышел из режима ожидания.

...
2017-06-10T15:17:01,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:25:28,089,5238,089,000,099,1600,099,000,070,305868,070,000
2017-06-10T15:35:29,089,5239,089,000,099,1600,099,000,070,305868,070,000
2017-06-11T00:56:09,089,5239,089,000,099,1601,099,000,070,305869,070,000
2017-06-11T01:04:24,089,5239,089,000,099,1601,099,000,070,305869,070,000
...

Что смешно, теперь оно снова увеличивается:

...
2017-06-11T01:04:24,089,5239,089,000,099,1601,099,000,070,305869,070,000
2017-06-11T01:14:25,089,5239,089,000,099,1601,099,000,070,305918,070,000
2017-06-11T01:17:01,089,5239,089,000,099,1601,099,000,070,305918,070,000
2017-06-11T01:21:35,089,5239,089,000,099,1601,099,000,070,305918,070,000
2017-06-11T01:24:26,089,5239,089,000,099,1601,099,000,070,305918,070,000
2017-06-11T01:33:48,089,5239,089,000,099,1601,099,000,070,305963,070,000

Я проверил уровень APM, и он вернулся к 128:

$ sudo hdparm -I /dev/sda | grep level
    Advanced power management level: 128
$ sudo smartctl --get=apm /dev/sda
...
APM level is:     128 (minimum power consumption without standby)
$ sudo hdparm -B /dev/sda

/dev/sda:
 APM_level  = 128

мой /etc/smartd.conf настройки еще указаны -e apm,off так я просто перезапустил smartmontools а затем снова проверил уровень APM:

$ sudo service smartmontools restart
$ sudo smartctl --get=apm /dev/sda
...
APM feature is:   Disabled
$ sudo hdparm -I /dev/sda | grep level
    Advanced power management level: disabled
$ sudo hdparm -B /dev/sda

/dev/sda:
 APM_level  = off

Я нарочно положил ноутбук в Suspend снова и вынул его обратно. Я проверил уровень APM, и он снова был 128, как и выше; когда я перезапустил smartmontoolsуровень APM снова был отключен, как и выше.

Снова мой счетчик циклов удерживается после отключения APM:

...
2017-06-11T01:33:48,089,5239,089,000,099,1601,099,000,070,305963,070,000
2017-06-11T01:34:27,089,5239,089,000,099,1601,099,000,070,305971,070,000
2017-06-11T01:42:06,089,5239,089,000,099,1601,099,000,070,306048,070,000
2017-06-11T01:42:58,089,5239,089,000,099,1602,099,000,070,306050,070,000
2017-06-11T01:43:24,089,5239,089,000,099,1602,099,000,070,306050,070,000
2017-06-11T01:44:32,089,5239,089,000,099,1602,099,000,070,306050,070,000
2017-06-11T01:45:00,089,5239,089,000,099,1602,099,000,070,306050,070,000

Следуя информации в ошибке # 1248012, я попытался включить параметры APM в /etc/hdparm.conf:

...
# -B apm setting
#apm = 255
apm = 255
# -B apm setting when on battery
#apm_battery = 127
apm_battery = 255
...

Я перезапустил hdparm:

$ sudo /etc/init.d/hdparm restart

Вставив жесткий диск в Suspend и вернув его обратно, я заметил, что уровень APM вернулся к 128.

Я открыл для этого Вопрос № 1218107.

1 ответ

Решение

Эти ценности вы получили от man hdparm применить к -S опция - вращение вниз, заставляя пластины перестать вращаться.

Мои быстрые исследования показывают, что Load_Cycle_Count подключен к головкам парковки и, кажется, -B вариант (Advanced Power Management, APM) является правильным. Описание на странице руководства не совсем понятно для меня, но ваша ценность 128 является наиболее агрессивным, который не допускает замедления. Я думаю, это чаще всего паркует головы.

Вы рассчитываете время замедления из этого значения 128 используя описание -S и я думаю, что это неправильно. Этот расчет сбивает с толку -B а также -S, Такая же путаница возникает, когда вы устанавливаете APM в 241,

Я видел утверждения, что hdparm -B 255 /dev/sdX помогает. Это отключает расширенное управление питанием, хотя. Мой диск настроен на 254 и у него есть то, что я считаю умеренным Load_Cycle_Count в отношении Power_On_Hours: 200k и 20k соответственно, поэтому соотношение намного лучше, чем у вас.

Мой совет - использовать одно из следующего:

hdparm -B 127 /dev/sdX
hdparm -B 254 /dev/sdX
hdparm -B 255 /dev/sdX

Я думаю, если вы установите -B до значения, которое позволяет замедление (т.е. 127 или меньше), то вы также должны настроить -S возможность получить не слишком короткое время замедления. Это потому, что каждое замедление требует, чтобы головы были припаркованы.

В то время как man hdparm предупреждает о различных опасных вариантах, -B не среди них. Даже если я полностью ошибаюсь, экспериментировать надо.

Другие вопросы по тегам