Não há como reparar setores defeituosos. Eles são marcados automaticamente como inutilizáveis, sem intervenção do usuário.
Para descobrir o que vários programas fazem, veja as man pages, por exemplo:
man badblocks
man fsck
man smartctl
Você não precisa ler tudo, apenas a descrição.