Realocar setor defeituoso

Realocar setor defeituoso

Tento realocar um setor defeituoso. Depois de ler issoPerguntameu entendimento é que o disco rígido tenta realocar automaticamente. Para acionar o processo tentei escrever no setor com dd mas nada mudou.

$ smartctl -a /dev/sda
...
5 Reallocated_Sector_Ct   ...       0
197 Current_Pending_Sector  ...       1
...

O setor defeituoso é: 215040

$ dd if=/dev/sda of=/dev/null bs=512 count=1 skip=215040
io-error on reading

Por que o setor não está alocado quando escrevo para ele?

$ dd if=/dev/zero of=/dev/sda bs=512 count=1 seek=215040
io-error on writing

Como posso fazer com que o setor seja reescrito?

Responder1

Tente uma gravação de baixo nível usando hdparm:

sudo hdparm --yes-i-know-what-i-am-doing --write-sector 215040 /dev/sda

… onde 215040está o número do setor que você deseja substituir (e possivelmente remapear) e /dev/sdaé o dispositivo no qual você deseja escrever.

Dehdparmpágina de manual:

--write-sector

Grava zeros no número do setor especificado. MUITO PERIGOSO. O número do setor deve ser fornecido (base10) após esta flag. O hdparm emitirá uma gravação de baixo nível (ignorando completamente os mecanismos usuais de leitura/gravação da camada de bloco) para o setor especificado. Isso pode ser usado para forçar uma unidade a reparar um setor defeituoso (erro de mídia).

informação relacionada