Com o passar do tempo o disco rígido (hd) e também o sólido (ssd) podem conter setores defeituosos, onde dados não devem ser gravados pois não poderão ser lidos posteriormente. O defeito não pode ser reparado, mas o sistema operacional deve saber quais são os setores defeituosos para não tentar usá-los. Para isso, devemos:
1) Inicializar o computador por um cd ou pendrive ("Live-CD"),
2) Usar o comando "sudo fdisk -l" para saber os nomes das partições. Por exemplo:
desgua@desguai7:~$ sudo fdisk -l
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000065cf
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 55360143 34170072 83 Linux
/dev/sda2 55362243 334110700 83030233 5 Extended
/dev/sda5 160157696 334110700 37101504 83 Linux
/dev/sda6 55362243 140157692 39807715 83 Linux
Partition table entries are not in disk order
Isso mostra que os nomes das minhas partições são "/dev/sda1", "/dev/sda2", "/dev/sda5" e "/dev/sda6".
3) Por fim use o comando "fsck.ext4" (substituir ext4 pelo sistema de arquivo usado) para buscar setores defeituosos em cada partição (você receberá uma mensagem de erro se tentar fazer isso no disco, sem especificar qual partição, isto é, se tentar usar "/dev/sda" no lugar de "/dev/sda1") e consertá-los. Como isso pode levar muitas horas, sugiro juntar a verificação de todas as partições em uma única linha e ir dormir ;-) (levou mais de 3h para corrigir os erros do meu disco ssd sata 3 de 120 GB). O comando ficaria assim:
sudo fsck.ext4 -cDfty -C 0 /dev/sda1 ; sleep 10 ; sudo fsck.ext4 -cDfty -C 0 /dev/sda5 ; sleep 10 ; sudo fsck.ext4 -cDfty -C 0 /dev/sda6
-c – checar por setores defeituosos
-D – otimizar os diretórios
-f – forçar a checagem mesmo que o sistema de arquivos aparente estar saudável
-t – mostra estatíscas do tempo (use -tt para mais informações)
-y – assuma a resposta "sim" para todas as questões
-C 0 – mostra o progresso no terminal
Referência:
1.