Suponho que você esteja falando sobre blocos físicos ruins em um disco e não sobre sistemas de arquivos corrompidos.
Para verificar a condição física do seu disco, é melhor instalar smartmontools
sudo apt-get install smartmontools
Isso funciona porque todos os discos modernos registram seu status de saúde usando um sistema chamado S.M.A.R.T.
Use o comando smartctrl
para ler este status. Por exemplo, para ler todos os atributos da primeira chamada de disco
sudo smartctl --all /dev/sda
Cuidado com uma linha falando sobre o status geral de saúde. Quando isso indicar um erro, é muito provável que o disco falhe em breve.
SMART overall-health self-assessment test result: PASSED
Outras linhas que você deseja verificar são a Contagem do setor pendente e os setores realocados.
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 48
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 2
Reallocated listas geralmente no campo bruto o número de setores defeituosos que o disco trocou por trabalhar com peças sobressalentes. Pendentes são setores que podem ser realocados caso a próxima gravação falhe.
Você pode até mesmo disparar autotestes do disco quando suportado pelo seu modelo
sudo smartctl -t long /dev/sda
Para forçar a verificação de todos os setores, use badblocks
em um modo no qual os dados são gravados. Tenha em atenção que, embora, em geral, seja seguro executar, irá colocar uma carga extra nos seus discos, o que poderá causar falhas. Sempre tenha um backup dos seus dados.
sudo badblocks -svvn -c 262144 /dev/sda
Se você tiver processado totalmente seu disco dessa maneira, o controlador de disco deve ter substituído todos os blocos defeituosos pelos que estão funcionando e a contagem realocada será aumentada no log do SMART.