Olá a todos do VOL, neste artigo retomo este velho assunto que assolou vários fóruns sobre Gnu/Linux pela Internet afora em meados de 2007 / 2008. Atualmente o mesmo não foi totalmente superado como irei demostrar nas próximas linhas.
O smartctl pertence ao pacote smartmontools, e é um utilitário para verificação e checagem de logs gerados pelo SMART (tecnologia de auto-monitoramento, análise e relatório- em inglês) que por sua vez
monitora o estado do HD gerando logs de seus resultados.
Alguns comandos:
# smartctl -i /dev/sda
smartctl 5.40 2010-10-16 r3189 [i486-slackware-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Model Family: SAMSUNG SpinPoint M5 series
Device Model: SAMSUNG HM160HI
Serial Number: S1SYJ56Z401313
Firmware Version: HH100-14
User Capacity: 160,041,885,696 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 7
ATA Standard is: ATA/ATAPI-7 T13 1532D revision 0
Local Time is: Mon May 9 14:52:02 2011 BRT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
Lista o modelo nº de série e versão de firmware do HD, entre outras coisas. Além de mostrar o status do SMART.
# smartctl -Hc /dev/sda
smartctl 5.40 2010-10-16 r3189 [i486-slackware-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 0) The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline
data collection: ( 55) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 55) minutes.
SCT capabilities: (0x003f) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.
Este realizou um auto teste e passou um resultado geral dos mesmos: SMART overall-health self-assessment test result: PASSED
# smartctl -l error /dev/sda
smartctl 5.40 2010-10-16 r3189 [i486-slackware-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF READ SMART DATA SECTION ===
SMART Error Log Version: 1
No Errors Logged
Já este comando, procura por logs de erros gerados pelo SMART. Só se deve preocupar-se com a saúde do HD quando este apresentar muitos e frequentes relatórios de erros.
# smartctl -t short /dev/sda
smartctl 5.40 2010-10-16 r3189 [i486-slackware-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Short self-test routine immediately in off-line mode".
Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 2 minutes for test to complete.
Test will complete after Mon May 9 15:16:35 2011
Use smartctl -X to abort test.
Este executa um teste rápido (2 min), no HD. Pode-se também executar um longo, modificando short por long. Mas este último demora muito mais a terminar (cerca de 55min).
Para saber o resultado do teste, digite:
# smartctl -l selftest /dev/sda
smartctl 5.40 2010-10-16 r3189 [i486-slackware-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== 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% 2296 -
Outro e um dos mais utilizados comandos, é o:
# smartctl -A /dev/sda
smartctl 5.40 2010-07-12 r3124 [i686-pc-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
Note que se trata do comando para monitorar os ciclos, só que completo (sem utilizar Grep para listar apenas a linha Load_Cycle_Count). Uma linha que merece atenção é a que trata da 194 Temperature_Celsius 0x0022 094 070 000 Old_age Always - 48 (Lifetime Min/Max 16/56) Onde mostra a temperatura atual, junto com os limites ideais de min/max.
[4] Comentário enviado por hgil em 09/06/2011 - 07:55h
Pois é tenho notado que isso vem ocorrendo também no Aptosid e no Linux Mint 11 também. Mas no hardware que uso Acer TimelineX 4820T e AcerOne D255 a única solução foi desabilitar o gerenciamento de energia com o comando hdparm -B 255 /dev/sda. Contudo, notei também que no notebook do meu irmão (mesmo modelo do meu) que tem o Mint 9 instalado (kernel 2.6.28) e no netbook de minha namorada (acer one com ubuntu 10.04 kernel 2.6.28) esse problema não ocorre. Interessante que no meu outro notebook (Acer 5050-3371) também tenho instalado o Aptosid na mesma versão do TimelineX e o problema ocorreu pouquíssimas vezes. Além disso, verifiquei que algumas vezes esse desligamento/religamento de ciclo não ocorre. Então ainda estou tentando descobrir se isso é um problema no kernel, ou no pacote responsável pelo gerenciamento de energia. O fato é que no meu notebook mais novo (aptosid KDE, 2.6.39) o bug ocorre quase sempre, da mesma forma que no netbook da minha cunhada (Linux Mint 11, Gnome, kernel 2.6.38). Sendo que a solução encontrada até agora é o comando hdparm -B 255 /dev/sda. Se alguém souber outra solução seria de grande utilidade.
[5] Comentário enviado por leandro em 09/06/2011 - 09:11h
Bom dia a todos!
Este problema descobri recentemente no Slackware versão 13.1, o mesmo ainda ocorre na versão 13.37.
Mas como disse o Levi Linux, ele possui também a mesma versão do Slackware que a minha, no caso dele o problema não ocorre. Pode ser o mesmo caso do problema do controle de brilho da tela de notebooks, onde não é em todos os hardwares que ocorre.
[7] Comentário enviado por albfneto em 09/06/2011 - 10:01h
Bom artigo. 10. Testei nos meus HDD, multipla distro, contudo, não parece haver problema.
embora meu HDD2, sdb2, já teve bad blocks e foi corrigido com hdd regenerator, e está funcionando até agora
o hdd1 é muito pouco usado,quase que só com windows eu uso windows 2 vezes por mês e olhe lá...
[10] Comentário enviado por removido em 09/06/2011 - 11:43h
Ola, eu fiz o teste no meu notebook com o Ubuntu 10.10 e deu certo, apareceu a mensagem com o valor 254, só que eu fiz o mesmo teste no meu desktop com o Slackware 13.37 e não apareceu nada, eu verifiquei linha por linha e não aparece a mensagem "Advanced power management level".
[13] Comentário enviado por leandro em 09/06/2011 - 14:12h
Icefusion: Nos meus testes estava disabled, com ciclos por minuto medianos. Já no pc do brpemerson no comentário acima, estava em 128, ou seja com ciclos altos. Isso reforça a tese de que depende mais do hardware do que da distribuição em si.
Hags: estranho, sendo o Mint derivado do Ubuntu deveria ter o problema também corrigido.
Cesarasilva: Eu não encontrei em minha pesquisa menção de que o problema também ocorre em desktops. Fique tranquilo. Quanto ao não aparecimento do level do power management, deve-se ao fato do hd do seu desk não possuir este recurso de economia de energia.
Acabei de instalar o BackTrack 5 Kde, e o mesmo também apresentou o problema. O level está em 128. Estranho o fato de distribuições derivadas do Ubuntu estarem apresentando o problema.
[14] Comentário enviado por xerxeslins em 09/06/2011 - 15:45h
Nota 10 para o artigo.
leandro nk, na verdade o erro do "HDparm" foi meu. Desculpe. Mas eu já modifiquei e também inverti a divisão de ciclos pelo tempo. Qualquer outra coisa é só avisar.
[20] Comentário enviado por removido em 11/06/2011 - 11:11h
Otimo artigo..
eu tenho um notebook lg r410 e instalado nele o mint 11, fiz o teste e esta tudo normal, acredito que deveremos ter divergencias de resultado, pois concordo com o que foi dito, depende muito de marca de equipamento e os compenentes internos, pois existem distros que não dão problemas e outras sim, vai ser questão de teste mesmo...
[21] Comentário enviado por leandro em 11/06/2011 - 12:18h
Pois é, Waqvan. Está tudo mesmo variando conforme as configurações de hardware; como disse o Predator no comentário acima, até mesmo o Ubuntu ainda apresenta isso.
[25] Comentário enviado por joseeeveraldo em 15/06/2011 - 20:30h
para executar o teste com o smartctl devo executar o comando 2 vezes e durante este intervalo de tempo devo ficar sem usar o sistema ou usá-lo normalmente? Outra dúvida no teste do hdparm o advanced power management estava em 128, porem quando eu testei o comando smartclt dava em média 1 ciclo por minuto, neste caso irei ter algum problema no meu hd?
[26] Comentário enviado por iz@bel em 16/06/2011 - 00:34h
Debian Squeenze amd64 num Dell Inspiron N4010
root@dell:/home/izabel# uname -a
Linux dell 2.6.32-5-amd64 #1 SMP Mon Mar 7 21:35:22 UTC 2011 x86_64 GNU/Linux
root@dell:/home/izabel# hdparm -I /dev/sda | grep Advanced
Advanced power management level: 254
* Advanced Power Management feature set
[27] Comentário enviado por leandro em 16/06/2011 - 08:39h
@ joseeeveraldo: Qual distribuição você utiliza ? é em notebook ou desktop? Quanto a contagem de ciclos pelo smartctl. Refaça a contagem, utilizando o pc normalmente (apenas evite jogar jogos pesados, ou baixar algo da internet via torrent), já que o valor 128 até agora tem se mostrado o mais agressivo em relação à economia de energia.
[31] Comentário enviado por leandro em 06/08/2011 - 09:07h
Bom dia!
@ CelsoRod. Até onde eu sei, o problema só ocorre em notebooks, devido principalmente à questão de economia de energia (que é bem mais agressiva nestes). Quanto aos comandos não darem resultados, se você utiliza Desktop, provavelmente no seu hdd não há este gerenciamento de energia. Mas, se você utiliza notebook; poste a saída dos comandos:
# smartctl -i /dev/sda
# smartctl -A /dev/sda
Ou se preferir, poste uma pergunta na sessão correspondente do site.
[32] Comentário enviado por rey em 09/09/2011 - 17:10h
Interessantissimo o artigo, li inteiro sem me cansar e é bom pois acrescentou mais conhecimento.
Particularmente, eu não me preocupo com isso porque uma distro não fica tempo suficiente no meu notebook para fazer algum estrago no HD (risos). Menos de 1 mês de Debian e penso em voltar ao Arch... e raramente uso o linux também.
Vou verificar qual o resultado no meu note, mas acho interessante acrescentarem marca do notebook e HD para que se possa ter um parametro de quais equipamentos apresentam maior indice de problema.
[35] Comentário enviado por leandro em 25/09/2011 - 23:23h
@ willys. Obrigado pela sua contribuição.
Já está publicada a atualização do artigo. E os nomes dos membros que postaram a saída dos comandos sugeridos, também constam lá como uma forma de agradecer pela imensa colaboração para com o artigo.