Como interpretar saída de badblocks

35

As man pages dos badblocks não parecem mencionar o que os três números na saída significam em particular:

Pass completed, 7 bad blocks found (7/0/0 errors)
Pass completed, 120 bad blocks found (0/0/120 errors)

Estou adivinhando que é "Erros ao ler / escrever / comparar". Alguém pode me esclarecer?

    
por Tomalak 19.02.2013 / 17:38

2 respostas

36

Seu palpite está correto.

O código-fonte é assim:

if (v_flag)
    fprintf(stderr,
            _("Pass completed, %u bad blocks found. (%d/%d/%d errors)\n"),
            bb_count, num_read_errors, num_write_errors, num_corruption_errors);

Portanto, seus erros de leitura / gravação / corrupção. E corrupção significa comparação com dados previamente escritos:

if (t_flag) {
    /* test the comparison between all the
       blocks successfully read  */
    int i;
    for (i = 0; i < got; ++i)
        if (memcmp (blkbuf+i*block_size,
            blkbuf+blocks_at_once*block_size,
            block_size))
            bb_count += bb_output(currently_testing + i, CORRUPTION_ERROR);
}
    
por 19.02.2013 / 17:45
-8

Errado. Se badblocks disser qualquer coisa que não seja "nenhum erro encontrado", isso significa:

  • Desligue a máquina imediatamente
  • Obter um disco de substituição
  • Orar para $ GOD_OF_BACKUPS dados importantes são seguros
  • Faça o que for necessário para configurar o novo disco e copie os dados do antigo

Você pode, opcionalmente, manter o disco em volta para entretenimento ou como peso de papel.

(discos modernos têm um conjunto de cilindros extras para remapear blocos ruins, já que não há como fabricar discos sem eles, e os usuários gritavam quando viram a lista de bloqueios ruins. Se os blocos ruins fizerem show up, significa que esse espaço está esgotado. Como os modos comuns de falha dos discos rotativos aumentam exponencialmente o número de blocos defeituosos, ver alguns meios significa que o disco normalmente tem algumas horas restantes.

    
por 19.02.2013 / 23:08

Tags