Veja a saída de smartctl -a /dev/sda
. Se não for um problema de cabo, o disco pode estar morrendo. Se você não tiver um backup recente, tente copiar o conteúdo do dispositivo de bloco (sem montagem) usando dd_rescue ou dd com as respectivas opções.
Depois disso, você pode tentar hdparm --write-sector
(sempre engraçado essas opções "MUITO PERIGOSAS" ...).
Outra opção é criar um dispositivo DM que contorne os setores defeituosos. Isso não recupera seu conteúdo, é claro. Você deve converter o offset sda (134913505) em um offset sda5 (descubra o número do primeiro setor de sda5 e subtraia-o). Vamos supor que o deslocamento sda5 seja 12345. Você cria um dispositivo de bloco cujo setor 12345 não está mapeado para sda5, mas em algum outro lugar (por exemplo, dispositivo de loop). A definição do dispositivo (para criação de dmsetup) se parece com isso:
0 12345 linear /dev/sda5 0
12345 1 linear /dev/loop0 0
12346 99987653 /dev/sda5 12345
# format:
# logical_start_sector num_sectors linear destination_device start_sector
Você não terá tanta sorte que exista apenas um setor defeituoso. Você pode mapear quantos quiser (resultando no dispositivo DM fornecendo zeros para esses setores, mas sendo gravável), mas calcular os deslocamentos em loop0 pode se tornar divertido. Outra opção seria usar um dispositivo virtual do mesmo tamanho para remapear e usar o provisionamento thin ou um snapshot (com tamanho pequeno de bloco, 1 setor, por exemplo) de um dispositivo de destino zero.
Editar 1
O dispositivo de loop não deve apontar para um arquivo no mesmo disco (sda), é claro.