Por que meu ciclo de disco rígido aumenta tão rápido?

1

Eu gostaria de entender por que a SMART está relatando que o valor bruto da contagem do ciclo de carga do meu disco rígido HGST está aumentando, e se houver algo que eu deva fazer para minimizar isso, estenda a vida útil do meu disco rígido.

Eu estou rodando o Debian Jessie no meu laptop, e eu estou conectado à energia de A / C nas últimas horas. Eu tenho o smartctl instalado:

# apt-get install smartmontools

Meu disco rígido é um HGST Travelstar:

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

Eu tenho um script que captura periodicamente algumas estatísticas de interesse:

  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

Meu script é pegar esses valores e armazená-los em um arquivo para que eu possa plotá-los ao longo do tempo com o 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

Não tenho a opção cmd_line definida no meu ficheiro /etc/hdparm.conf , definindo a opção hdparm para configurar o tempo de rotação; nem tenho nenhuma opção -e apm definida no meu arquivo /etc/smartd.conf .

Estou executando o programa MATE, mas não tenho certeza se ele tem alguma opção de configuração definida para o horário de desativação diferente da caixa de seleção Dinamizar discos rígidos quando possível em Sistema & gt ; Preferências > Gerenciamento de energia . (By the way, é atualmente desmarcada quando On AC Power e verificado quando Na bateria .

De cerca das 11:05 até às 12:00. Deixei meu laptop sozinho, mas não o coloquei em modo de espera nem durmo; ainda estava com a tela bloqueada.

Às 12:00 h Eu comecei a usá-lo novamente e estive no teclado até as 12:27 da noite.

Aqui estão as minhas configurações atuais de 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

Pela descrição da opção -S para hdparm , 128 significa que o tempo limite de espera (spindown) para o drive é 128 * 5 = 640 segundos, ou pouco mais de 10 minutos, se eu entendi corretamente.

Atualização: desativei o APM na unidade editando meu /etc/smartd.conf e alterando -e apm,241 para -e apm,off e, em seguida, reiniciando o smartmontools.

Isso parece ter ajudado a interromper o aumento:

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

Se ninguém tiver idéias melhores, a próxima coisa que posso tentar é brincar com o valor 241 para ver como isso faz a diferença. De acordo com a página hdparm man:

  • 0 : os tempos limite estão desativados
  • 1..240 : múltiplos de 5 segundos, produzindo tempos limites 5s.20m
  • 241..251 : 1..11 unidades de 30 minutos, produzindo tempos limite 30m..5.5h
  • 252 : limite de tempo de 21 minutos
  • 253 : período de tempo limite definido pelo fornecedor 8h..12h
  • 254 : reservado
  • 255 : 21 min mais 15 s

Eu queria o 241 para meu laptop especificamente para um tempo limite de 30 minutos, portanto, esperaria que a contagem do ciclo de carga aumentasse em 1 não menos que a cada 30 minutos; no entanto, parece que eu estava vendo que as contagens aumentam de 300 a 400 vezes por hora antes de desativar o APM, o que significaria uma média de 5 a 7 vezes por minuto ou uma vez a cada 8 a 12 segundos.

Por favor, corrija-me se eu estiver interpretando incorretamente.

Atualização: Eu peguei o laptop e o suspirei. Na última atualização, nunca examinei o nível de APM após reiniciar o smartmontools . Eu farei isso desta vez.

Desde que saímos do Suspend, notei que minha contagem de ciclos aumentou apenas 1 vez desde que meu laptop entrou em suspensão e saiu da suspensão:

...
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
...

O que é engraçado agora é que ele continua aumentando novamente:

...
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

Eu verifiquei o nível de APM e ele voltou para 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

Minhas configurações de /etc/smartd.conf ainda foram especificadas -e apm,off , então eu simplesmente reiniciei smartmontools e verifiquei o nível de APM novamente:

$ 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

Eu propositadamente coloquei o laptop em Suspender novamente e o retirei. Eu verifiquei o nível de APM e foi novamente 128 assim como acima; quando eu reiniciei o smartmontools , o nível do APM novamente foi desativado como acima.

Mais uma vez, minha contagem de ciclos é mantida após a desativação do 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

Seguindo as informações em Bug # 1248012 , tentei ativar as opções de APM em /etc/hdparm.conf :

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

Eu reiniciei o hdparm :

$ sudo /etc/init.d/hdparm restart

Depois de colocar o disco rígido em suspensão e trazê-lo de volta para fora, notei que o nível de APM está de volta para 128.

Eu abri Pergunta # 1218107 por isso.

    
por jia103 10.06.2017 / 18:28

1 resposta

1

Esses valores obtidos de man hdparm aplicam-se à opção -S - desativação, fazendo com que os discos parem de girar.

Minha rápida pesquisa indica que Load_Cycle_Count está conectado a cabeças de estacionamento e parece que a opção -B (Advanced Power Management, APM) é a correta. A descrição na página man não é perfeitamente clara para mim, mas seu valor de 128 é o mais agressivo que não permite a desativação. Meu palpite é que estaciona as cabeças com mais frequência.

Você calcula um tempo de rotação a partir desse valor de 128 usando a descrição de -S e acho que está errado. Esse cálculo confunde -B e -S . A mesma confusão ocorre quando você define o APM como 241 .

Eu vi reivindicações que hdparm -B 255 /dev/sdX ajuda. Desativa o Advanced Power Management. Meu disco está definido como 254 e tem o que eu acho que é um moderado Load_Cycle_Count em relação a Power_On_Hours : 200k e 20k respectivamente, então a proporção é muito melhor que a sua.

Meu conselho é usar um dos seguintes itens:

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

Eu suponho que se você definir -B para um valor que permita o desmembramento (ou seja, 127 ou menos), você também deverá ajustar a opção -S para obter um tempo de desativação não muito curto. Isso ocorre porque cada spin-down exige que as cabeças sejam estacionadas.

Enquanto man hdparm avisa sobre várias opções perigosas, -B não está entre elas. Mesmo se eu estiver completamente errado, deve ser seguro experimentar.

    
por 10.06.2017 / 22:11