Como posso saber o número de setores defeituosos no meu disco rígido?

10

Sei como verificar / reparar meu disco rígido, mas não sei como ver o número de setores defeituosos no meu disco rígido.

PS Parece que meu disco rígido morrerá em breve :-(

Alpha Sísifo
fonte

Respostas:

12

Há duas maneiras de detectar setores defeituosos no Linux: você pode usar o utilitário de disco (gui) ou o comando badblocks para verificar se há setores defeituosos no disco rígido:

sudo badblocks -v /dev/{device}

Isso deve responder à pergunta, mas para qualquer pessoa interessada em como marcá-las, isso pode ser feito com 2 comandos simples ...

Você adiciona os blocos defeituosos a um arquivo ...

sudo badblocks /dev/sdb > {/dir/to/filename}

e diga fsckpara marcar como inutilizável com ...

sudo fsck -l {/dir/to/filename} /dev/{device}
Rinzwind
fonte
2
Parece que e2fscktem uma -copção que se chama badblockse cuida do tamanho do bloco. Aparentemente, é preciso ter muito cuidado para que eles correspondam se você fizer do seu jeito.
Martin Ueding
3
Esse uso de badblocks+ fsckpara marcar blocos defeituosos pode ser perigoso. Da badblockspágina de manual: "Nota importante: Se a saída de badblocks for alimentada nos programas e2fsck ou mke2fs, é importante que o tamanho do bloco seja especificado corretamente, pois os números de bloco gerados dependem muito do tamanho do bloco em uso pelo sistema de arquivos. Por esse motivo, é altamente recomendável que os usuários não executem badblocks diretamente, mas que usem a opção -c dos programas e2fsck e mke2fs . " Veja @ john-mehorter answer.
precisa saber é o seguinte
Obrigado, eu estava pensando sobre isso ontem. +1
WinEunuuchs2Unix
8

Use fsck.ext3 (e2fsck) por exemplo e use a opção -cc

-c     This option causes e2fsck to use badblocks(8) program to do a read-only scan of the device in  order  to  find  any  bad
          blocks.   If  any  bad blocks are found, they are added to the bad block inode to prevent them from being allocated to a
          file or directory.  If this option is specified twice, then the bad block scan will  be  done  using  a  non-destructive
          read-write test.`

fsck -cc / dev / sda1

John Mehorter
fonte
1
Eu li isso várias vezes nos últimos anos, mas não sei o que é um teste não destrutivo. Não muda nada no disco? É apenas informativo?
Robert Vila
Suponho que ele tentará escrever em cada bloco, mas escreva os dados originais novamente.
Martin Ueding