Como apontei na minha outra resposta , todo disco rígido moderno tem espaço para remapeamento disponível (porque especialmente nas densidades de disco atuais, nenhum prato de disco será perfeito - sempre haverá alguns defeitos nos quais o disco precisará refazer, mesmo na marca -novamente nunca foi usado-saiu-da-linha-de-montagem-em-minhas-mãos).
Por esse motivo, teoricamente, você deve ter uma falha SMART relatada antes de algo como badblocks
perceber setores defeituosos (visíveis ao usuário final) em uma unidade.
Nos discos rígidos modernos, qualquer setor defeituoso visível ao usuário final (como pode ser relatado badblocks
ou detectado automaticamente pelo sistema operacional) é um suspiro final e estremecimento de um disco que está morrendo.
Por fim, o SMART e badblocks
testa duas coisas diferentes, mas relacionadas:
O SMART é uma ferramenta de auto-monitoramento:
O disco rígido conhece algumas informações sobre seus parâmetros operacionais e possui alguns meta-conhecimentos sobre o que é "normal" para alguns e "aceitável" para outros.
Se o inversor detectar que determinados parâmetros são "anormais" ou "inaceitáveis", ele reportará uma condição de pré-falha - em outras palavras, o inversor ainda está funcional, mas poderá falhar em breve.
Por exemplo: O motor do eixo normalmente gasta 0,10 amperes, mas agora está consumindo 0,50 amperes - um consumo anormalmente alto que pode indicar que o eixo está travando ou que o lubrificante permanente nos mancais se foi. Eventualmente, o motor será incapaz de superar a resistência e o inversor apreenderá.
Outro exemplo: a unidade possui 1000 blocos de "remapeamento" para lidar com setores defeituosos. Usou 750 deles, e os engenheiros que construíram o inversor determinaram que o número de remaps indica algo errado internamente (prato ruim, falha de velhice, cabeça danificada) - o inversor relatará uma condição de pré-falha, permitindo que você tenha tempo para obter seus dados serão desativados antes que o espaço remapeado acabe e setores defeituosos se tornem visíveis.
A SMART está procurando mais do que setores defeituosos - é uma avaliação mais abrangente da saúde da unidade. Você pode receber um aviso de pré-falha SMART em uma unidade sem setores defeituosos e sem erros de leitura / gravação (por exemplo, o problema do motor do eixo descrito acima).
badblocks
é uma ferramenta com um objetivo específico (desatualizado): encontrar setores defeituosos.
badblocks
vem de um tempo anterior ao SMART e ao remapeamento do setor ruim. Naquela época, sabíamos que as unidades tinham imperfeições, mas a única maneira de mapeá-las para impedir o armazenamento acidental de dados era testá-lo sob tensão, causar uma falha e lembre-se de não colocar os dados novamente.
A razão pela qual digo que está desatualizado é porque os eletrônicos nos drives modernos já fazem o que badblocks
fazem, internamente e alguns milhares de vezes mais rápido. badblocks
basicamente permite que unidades antigas que não possuem eletrônicos sofisticados re-mapeiem (ou pulem) setores que falharam, mas os discos rígidos modernos já detectam setores com falha e os remapearam para você.
Teoricamente, você pode usar os badblocks
dados para ter as falhas de remapeamento do sistema operacional (visíveis) como se o seu disco moderno fosse um disco antigo de Winchester, mas isso é contraproducente - como eu disse anteriormente, QUALQUER setor defeituoso detectado badblocks
em uma unidade moderna é uma causa para descartar o unidade inteira com defeito (ou prestes a falhar).
Os setores defeituosos visíveis indicam que a unidade está sem espaço para remapeamento, o que é relativamente raro para os discos modernos, a menos que sejam antigos (próximo ao final da vida útil) ou defeituosos (pratos / cabeças ruins de fábrica).
Então, basicamente, se badblocks
você estiver executando um disco antes de implantá-lo na produção, você se sentirá melhor em fazê-lo, mas se o seu disco foi fabricado neste século e mostra um setor ruim visível, você deve jogá-lo no lixo (ou chamar sua garantia). Para meu dinheiro, o status e a defesa SMART em profundidade são um uso melhor do meu tempo do que a verificação manual de discos.
smartctl -t long /dev/sda
Ou seja, devo executar de vez em quando, ou posso supor quesmartd
"automagicamente" me avise de problemas iminentes sem que eu precise configurar mais alguma coisa?badblocks
lê todos os bytes da unidade, os substituem por padrões aleatórios e, em seguida, devolvem os dados originais. Os autotestes SMART não fazem isso. Isso deve limpar todos os setores "pendentes", se bem entendi.Boas respostas a esta pergunta são
/superuser//a/693065
/superuser//a/693064
Ao contrário de outras respostas, acho que os badblocks não estão desatualizados, mas são uma ferramenta muito útil. Uma vez eu atualizei meu PC com um novo disco rígido e ele começou a funcionar instável. Levei um bom tempo para perceber, graças aos badblocks, que a superfície do disco tinha defeitos. Desde então, corro badblocks completos no modo de gravação (destrutíveis!) Para cada novo disco rígido que começo a usar e nunca mais tive esse problema. Eu recomendo um
time sudo badblocks -swvo sdX.log / sev / sdX
para cada novo disco rígido. Ele testará cada bit do disco algumas vezes para escrita e leitura e, portanto, poderá evitar muitos problemas mais tarde.
Durante este teste, os blocos defeituosos serão mapeados pelo inversor. Portanto, a "Contagem de setores realocados" deve ser anotada antes e depois do teste e comparada com o limite SMART, pois informa sobre a integridade da unidade.
fonte
badblocks é uma relíquia dos velhos tempos e não é estritamente útil, ele pode encontrar um setor atualmente ilegível, mas a coisa certa a fazer com um setor ruim é recuperar os dados do backup. O que pode ser feito se os dados não foram críticos para você é excluir o arquivo associado e gravar qualquer coisa nesse local; isso permitirá que o disco realoque o setor se achar necessário e continue trabalhando.
O autoteste do disco também testará toda a mídia quanto a vários defeitos. Supõe-se que ele use limiares mais baixos do que o usado na operação normal para verificar se o disco tem muitos pontos fracos e, com base na lógica do fornecedor, pode decidir que o disco já passou da sua vida útil e declara que o teste falhou. Nesse ponto, você deve retirar todos os seus dados ou recuperá-los do backup e substituir o disco.
Se uma ação do disco (por badblocks ou operação normal) atingir um erro de leitura irrecuperável, o disco atualizará automaticamente seu contador pendente de realocação e, quando a realocação for realizada, atualizará a realocação pendente e os contadores realocados. Um dd simples fará isso acontecer também.
Se você precisar escolher entre os dois, use o smartctl -t, desde que ele tenha uma melhor análise do disco.
Também posso sugerir o uso do meu utilitário de disco https://github.com/baruch/diskscan , ele funciona mais como badblocks, mas tenta avaliar se existem setores que estão indo mal, como um setor com dificuldade de audição que leva um tempo. muito mais tempo para ler. Isso é indicativo de um problema de mídia em desenvolvimento e, em versões futuras, também pode oferecer uma tentativa automática de ajudar o disco a corrigir esse problema.
fonte
badblocks
estressa a unidade de maneira que os autotestes SMART não fazem?badblocks
lê todos os bytes do disco, substitui-os por padrões de teste e depois grava os dados originais de volta no lugar. Os autotestes SMART são testes de leitura e gravação da mesma forma?