badblocks vs. autoteste estendido SMART

11

Como uma varredura completa de superfície de leitura / gravação por 'badblocks' difere do teste automático integrado do SMART Extended ?

Parece que eles são varreduras de superfície total, então por que leva badblocks -vws 3 dias para testar uma unidade de 1TB, enquanto a SMART faz isso em 2 ½ horas (pelo menos essa é a estimativa de tempo que a smartmon me deu) ?

    
por Robert S. Barnes 25.12.2013 / 19:16

3 respostas

11

O teste de superfície SMART é quase certamente um passo de leitura único e certamente não destrutivo. Como foi apontado, também é interno à unidade; com a possível exceção de dados de controle menores, nenhum dado está sendo passado para ou do host durante o teste.

Por outro lado, badblocks -w faz quatro passagens pela unidade, cada uma com uma gravação e uma leitura. Isso por si só representa uma diferença de 8 × no tempo gasto para o teste, além de latência rotacional. Como o software está sendo executado no host, todos esses dados precisam ser arrastados pela interface do disco para a RAM e manipulados pelo software (badblocks, no nosso caso).

Se tivermos uma latência rotacional de pior caso de 1 × (o disco precisa fazer uma revolução completa depois de gravar os dados para poder ler de volta, o que é basicamente o que você verá se gostar de badblocks primeiro preenche todo o disco e depois lê tudo de volta, ao invés de fazer I / O uma trilha física de cada vez, o que com o LBA é quase impossível), acabamos com o pior caso (1 + 1) × 8 × = 16 × como tempo necessário para concluir a operação. 16 × 2.5h = 40h, o que certamente está de acordo com seus números e ainda assume que estamos lidando apenas com armazenamento de dados na unidade e que isso está acontecendo tão rápido quanto a unidade pode sustentar I / O sequencial.

    
por 25.12.2013 / 23:25
4

O S.M.A.R.T. testes curtos e longos realizam somente leituras (localizadas) dos setores; é também não destrutivo para os dados. Os dados lidos são transferidos apenas para o controlador on-board, não para o PC host. A interface SATA está essencialmente inativa durante o teste e a luz de atividade do HDD no PC não deve ser ligada.

badblocks -vws está solicitando um setor de gravação, em seguida, leia & verifique a operação. Cada gravação e leitura adiciona uma revolução de disco por operação mais tempo para transferências de dados pela interface SATA mais o processamento do PC host. A luz de atividade do HDD deve estar na maior parte do tempo.

    
por 25.12.2013 / 23:24
1

link

The caveat here being is that some manufacturers testing programs do not print full test results and allow a certain number of bad sectors saying only if they pass or not. Manufacturer programs, however, are generally quicker than badblocks sometimes a fair amount so.

Portanto, use testes completos e destrutivos de badblocks quando possível.

Editar: Por destrutivo eu quis dizer que muitos discos rígidos modernos têm uma carga de trabalho de 180TB / y, significando em um HD de 12TB, você estaria levando 96TB de carga de trabalho, se você executar o conjunto completo de testes de badblocks apenas para testá-lo. Isso pode ser de 48 TB se, por carga de trabalho, elas só significarem gravações, o que pode ser o caso, mas não está bem documentado.

    
por 16.02.2018 / 00:55