Corrigir blocos defeituosos no disco rígido do Mac [fechado]

23

Eu tenho um disco rígido que digitalizei com o TechTool e ele relata um bloco defeituoso. Pelo que sei, o TechTool apenas verifica e relata uma falha. Não conserta nada.

Naquela época, o Norton Disk Doctor fazia o trabalho de digitalizar e sinalizar (remapear) blocos defeituosos no Mac. Hoje, temos várias ferramentas para corrigir erros de diretório do HFS + (Disk Utility, fsck, DiskWarrior, TechTool), mas não conheço nenhuma ferramenta que faça uma varredura de superfície e corrija os blocos defeituosos também.

Que software está disponível para isso?

Se eu souber o endereço do bloco defeituoso, existe um utilitário de terminal de baixo nível para marcá-lo?

Andrew Vit
fonte
3
Os HDDs modernos remapeiam automaticamente os blocos defeituosos após operações de leitura com falha. O único problema é perder dados nesse bloco, o que pode tornar um arquivo ilegível / quebrado, ou talvez introduzir um erro no FS - para isso, use o checkdisk / fsck do seu sistema (não conheço muito bem os Macs). [Às vezes, blocos ruins são o resultado de perda de energia e não o problema de hardware; este é corrigível, mas um tópico diferente].
chronos
5
@chronos Existem muitos HDDs modernos que apenas remapearam blocos defeituosos automaticamente após falhas nas operações WRITE, e não lidos. Eu trabalhei com vários discos rígidos recentes que continuarão falhando na leitura do mesmo bloco defeituoso repetidas vezes, mas assim que você escreve nele, o problema é corrigido.
Spiff
2
@Spiff - você está correto, cometi um erro ao tentar evitar longas explicações sobre como os dados e os campos CRC do bloco funcionam juntos para garantir a integridade dos dados e, portanto, exigindo uma operação de gravação para verificar se é um problema de bloco físico ou apenas CRC corrompido (que é corrigível). Na verdade, eu não tenho conhecimento de quaisquer HDDs modernos que executam remapeamento na leitura ...
chronos
11
Há uma coisa a considerar: minha experiência em 'consertar' o setor Pendente em uma partição NTFS consistiu em 1) identificar o setor de dados exato, 2) gravar nele e 3) redefinir o contador interno de setores defeituosos do NTFS (que foi o único passo Documentei em bogdan.org.ua/2010/03/01/… ). Não tenho certeza se o HFS + também mantém um contador de blocos defeituosos - se houver, isso pode ser um problema adicional, se você quiser recuperar esse setor único.
Chronos

Respostas:

9

Não conheço nenhuma ferramenta que faça uma varredura de superfície e corrija os blocos defeituosos também.

Com que tipo de Mac e com que tipo de disco rígido você está tendo problemas?

Duvido que você encontre ferramentas de software para "consertar" blocos defeituosos, pelo menos para hardware recente. Eu não sei quando ele começou, mas há algum tempo a capacidade de remapear um setor ruim foi mesclada no firmware do disco rígido.

Se você observar os registros SMART da sua unidade com uma ferramenta como SMARTReporter , deverá ver uma entrada com o número de identificação 05 e o título "Contagem de setores realocados". Esse é o número de setores defeituosos que a unidade remapeou.

Talvez o "Bad Block" do Disk Warrior esteja se referindo a outra coisa? (Eu não sabia o que isso poderia ser).


Atualize em resposta ao comentário (abaixo):

O SMARTReporter parece ser um utilitário bastante "peculiar". Na verdade, você pode consultar e exibir o conteúdo dos registros SMART de uma unidade, basta percorrer obstáculos inesperados para fazer isso.

Nas Perguntas frequentes do SMARTReporter, você pode encontrar este boato:
O SMARTReporter pode me dizer exatamente qual teste SMART está falhando?
Sim, começando com a versão 2.4.5! Clique com o botão direito do mouse na unidade na lista de unidades na janela de preferências e selecione "Verificar atributos SMART".

Outra peculiaridade do SMARTReporter é que a pasta recortada aparentemente só funciona nessas janelas de exibição quando você usa as entradas da barra de menus. Os atalhos de teclado e a janela de contexto "clique com o botão direito do mouse" não serão suficientes. Por outro lado, o SMARTReporter é gratuito. ;-)

Mas eu discordo ...

Curiosamente, o SMART Utility chama a unidade de "Falha" quando todos os outros utilitários a exibem como "Verificada". Ele mostra 1 setores defeituosos pendentes. Então, como você altera um setor ruim "pendente" para um setor "removido" ou "realocado"?

Meu entendimento é que você não faria isso. O firmware da unidade deve fazê-lo automaticamente por conta própria. Observe o que diz a tabela no artigo SMART da Wikipedia .

  • 05
    Contagem de setores realocados Contagem de setores realocados. Quando o disco rígido encontra um erro de leitura / gravação / verificação, ele marca esse setor como "realocado" e transfere dados para a área reservada especial (área de reposição). Esse processo também é conhecido como remapeamento, e os setores "realocados" são chamados de remapeamento.
    É por isso que, nos discos rígidos modernos, "bad blocks" não podem ser encontrados durante o teste da superfície - todos os bad blocks estão ocultos em setores realocados. No entanto, à medida que o número de setores realocados aumenta, a velocidade de leitura / gravação tende a diminuir.
    O valor bruto normalmente representa uma contagem do número de setores defeituosos que foram encontrados e remapeados. Assim, quanto maior o valor do atributo, mais setores a unidade teve que realocar.

  • C5 Contagem
    de setores pendentes atuais Número de setores "instáveis" (aguardando remapeamento devido a erros de leitura). Se um setor instável for subsequentemente gravado ou lido com êxito, esse valor será diminuído e o setor não será remapeado. Os erros de leitura em um setor não remapearão o setor (pois pode ser legível posteriormente); em vez disso, o firmware da unidade lembra que o setor precisa ser remapeado e remapeá-lo da próxima vez que for gravado.

Portanto, se o acima exposto for verdade, aparentemente a contagem de setores pendentes precisa ser interpretada com cautela. O erro de leitura do setor provavelmente ocorreu durante a verificação do disco que você fez anteriormente com o TechTool. (BTW, você quer dizer TechTool Deluxe 3.1.3 ?) Como o TechTool provavelmente não tentou escrever o setor, ele ainda não foi realocado.

Isso pode ser feito sem uma reformatação?

Eu acho que uma "reformatação" só faria alguma coisa se o formato fosse gravado em todos os setores da unidade. Eu não sei se um apagamento padrão (não seguro) com o Disk Utility ... que é o que eu acredito que você quer dizer com uma reformatação no contexto de um MAC ... conseguiria isso.

Se você fez isso, seria uma tarefa muito demorada. Recentemente, fiz algo parecido com um drive de laptop de 500 GB e demorou um pouco menos de duas horas e meia para concluir. Obviamente, você teria que adicionar tempo para (espero) restaurar seu sistema a partir do seu backup (espero que seja confiável).

Não está claro para mim que é necessário que você tente forçar ativamente que isso seja "corrigido". Supostamente, o firmware da unidade deve lidar com isso sozinho na próxima vez que houver uma tentativa de gravar no setor defeituoso. Além disso, parece-me provável que o setor ofensivo não esteja sendo usado atualmente como parte de nenhum arquivo. O TechTool apenas "tropeçou" ao digitalizar todos os setores da sua unidade.

Mas se você quisesse forçar uma correção, acho que teria que fazer algo que forçasse uma gravação nesse setor. Parece que não vale a pena o esforço. Eu continuaria fazendo o backup dos arquivos e vigiando sua unidade, caso ela comece a se degradar ainda mais.

John irracional
fonte
11
Isto é para o meu iMac SATA HD interno. O SMARTReporter não diz muito além de "Verificado", mas outra ferramenta chamada SMART Utility tem todas as informações. Curiosamente, o SMART Utility chama a unidade de "Falha" quando todos os outros utilitários a exibem como "Verificada". Mostra 1 setores defeituosos pendentes. Então, como você altera um setor ruim "pendente" para um setor "removido" ou "realocado"? Isso pode ser feito sem uma reformatação? (Sim, eu estou backup, mas no interesse da economia de tempo.)
Andrew Vit
11
Além do que eu disse na minha atualização acima, minha preferência pessoal é executar o diagnóstico do fabricante da unidade. Talvez seja mais do que realmente é necessário, mas eu imagino "Por que não?" Mas me impressiona como fazer isso para um iMac. Normalmente, os diagnósticos são distribuídos como uma imagem de CD inicializável, mas não acredito que nenhum deles seja inicializado em um Mac Intel. Para contornar isso, geralmente removo a unidade e monte-a em um PC com Windows. No entanto, acredito que remover a unidade de um iMac pode ser uma verdadeira PITA, que eu não recomendaria a maioria. <sigh>
John irracional
@ Andrew Vit - pode ser o caso de escrever para esse setor com problemas pendentes o corrigir (remova o setor da lista de pendentes sem adicionar à lista de realocados).
Chronos
3
Para o registro, acabei fazendo exatamente isso: reformatado com a opção "write zeros", que levou algum tempo, e depois clonado de volta no meu backup. Meu "pendente" bloco de ruim que estava sendo relatado no SMART Utility foi embora: ela simplesmente desapareceu ea unidade não mostra blocos ruins agora ... / ombros /
Andrew Vit
11
@ Andrew Vit: Obrigado por atualizar com seu status. Eu sempre aprecio descobrir como a história termina. Se isso te faz feliz, então sem dúvida valeu a pena. Mas, na IMO, a reformatação "write zeros" foi um exagero. O setor provavelmente não estava sendo usado ativamente e (provavelmente) teria sido remapeado se / quando você o usou. Por curiosidade, você pode verificar seus valores SMART novamente e ver se o setor foi de fato remapeado? (A contagem de realocação mudou de 0 para 1?) Ou se era "apenas um CRC corrompido", uma possibilidade que os cronos mencionaram em um comentário anterior?
irracional John
12

Se você estiver vendo blocos defeituosos ao executar uma verificação de integridade do sistema de arquivos, o disco rígido provavelmente já excedeu o número de blocos que pode remapear e esgotou seus setores "sobressalentes". Você deve fazer backup dos seus dados imediatamente (se ainda não o fez) e substituir a unidade antes que o problema piore e você os perca.

Sugiro que você baixe o smartmontools e o GSmartControl para visualizar o diagnóstico SMART como outra verificação, se você não tiver certeza em qual diagnóstico SMART confiar.

Se o diagnóstico SMART não estiver relatando setores realocados (ou se a coluna VALUE para "Contagem de setores realocados" ainda estiver bem abaixo de THRESHOLD), existe uma maneira fácil de executar uma varredura de superfície e remapear os blocos defeituosos ao mesmo tempo. (Nota: certifique-se de fazer backup dos seus dados primeiro!)

A maneira mais fácil de forçar a unidade a fazer seu próprio remapeamento de bloco defeituoso é inicializar a partir de um CD do Ubuntu Live , abra um terminal e execute este comando:

sudo badblocks -nvs /dev/sda

Isso fará um teste aleatório não destrutivo de leitura e gravação na primeira unidade, remapeando setores defeituosos ao longo do caminho.

Se você tiver mais de um disco rígido, poderá substituir / dev / sda por / dev / sdX, onde X é letra minúscula. Você pode obter uma lista de todos os discos rígidos (/ dev / sdX devices) digitando este comando:

sudo fdisk -l

Como você está usando o Mac OS X, que é baseado no BSD, você também pode ler sobre badsect e bad144 , que são os utilitários de linha de comando do BSD para lidar com blocos defeituosos.

roubar
fonte
Isso vai demorar um pouco:Testing with random pattern: 0.15% done, 27:02 elapsed. (0/0/0 errors)
neu242 12/08
Como alternativa, se você tiver ferramentas unix instaladas em um disco de inicialização diferente, poderá fazer o download e criar o e2fsprogs.sourceforge.net que contém badblocks. Em seguida, basta desmontar o disco que deseja verificar e executar badblocks nele.
user8128167
6

O comando interno do OS X fsck_hfs tem uma opção -S que aparentemente varrerá e corrigirá blocos defeituosos em um disco rígido no OS X.

A partir da documentação:

-S Faça com que o fsck_hfs verifique o dispositivo inteiro procurando por erros de E / S. Ele tentará mapear os blocos com erros para nomes, semelhante à opção -B.

Exemplo:

fsck_hfs -fy -S / dev / disk3s11

Ele parece estar fazendo que quando executado em aa disco sem blocos ruins, mas eu ainda tenho que verificar / documento que ele faz quando não são bad blocks.

Matthew Elvey
fonte
Não acredito que isso faça uma leitura e reescrita por bloco como badblocks -n, que é frequentemente necessária para que o firmware do disco realmente poupe o bloco.
Taryn #
5

Minha experiência com o SpinRite do grc.com foi muito positiva. Consegui recuperar pelo menos 4 discos que falharam em todas as outras tentativas de repará-los. A única desvantagem é que ela requer uma máquina baseada em BIOS, o que significa que não funcionará em Macs modernos baseados em EFI. O bom é que qualquer outro PC poc irá executá-lo, a partir de um disquete, CD ou unidade flash. Não encontrei nada que se aproxime em termos de realmente inspecionar o conteúdo de setores individuais e recuperar os dados no que qualquer outro utilitário descarta como um bloco ruim.

Alphaman
fonte
3

É uma pergunta antiga, mas ainda válida. O que funcionou para mim é o seguinte:

  • Se possível, inicialize a partir de uma partição ou unidade que não seja a principal. Verifique se não é a opção de recuperação do Mac, se você quiser usar um aplicativo de terceiros para identificar os arquivos corrompidos
  • Identifique todos os arquivos no seu disco rígido que estão corrompidos devido a blocos defeituosos. Por acaso, uso o Carbon Copy Cloner para criar um espelho da minha unidade como um backup (ele fornece uma lista de arquivos corrompidos). Provavelmente existem outras ferramentas que podem fazer isso.
  • Localize esses arquivos na sua unidade e exclua-os ( esvazie a lixeira também! )
  • Abra o Utilitário de Disco e apague o espaço em disco vazio, escrevendo '0'. (você só precisa escrever uma vez, escolha a opção mais rápida). Lembre-se de que isso ainda pode levar algum tempo, especialmente se você tiver muito espaço livre.

Isso identifica os blocos defeituosos e os marca como tal, para que não sejam usados ​​novamente. Como mencionado anteriormente, os erros aparecerão apenas ao tentar gravar nele. Ao escrever zeros, você faz exatamente isso.

  • se você tiver um backup desses arquivos em algum lugar, substitua-os manualmente do seu backup (se você quiser substituí-los em primeiro lugar).

Eu posso imaginar que isso consome muito tempo, especialmente se houver muitos erros e, portanto, muitos arquivos a serem substituídos. Se for esse o caso, considere substituir a unidade, vai piorar ...

Gerbie
fonte
0

Ouvi coisas boas sobre o SpinRite do GRC , mas nunca tentei isso sozinho.

Fredden
fonte
Infelizmente, o SpinRite provavelmente faria mais mal do que bem em uma unidade que já falhou. :(
rob
@rob prejudicar de que maneira? SpinRite parece combinar uma série de abordagens, com ênfase em extraordinariamente bom atendimento ...
Graham Perrin
2
@GrahamPerrin, por exemplo, não faz sentido tentar recuperar seus dados e gravá-los na mesma mídia defeituosa conhecida . Mas ignorando que, assim que o SpinRite encontra um bloco ilegível, ele tenta e tenta novamente várias vezes antes de continuar. Enquanto isso, a unidade pode continuar a se degradar até o ponto de falha total ("naturalmente" ou possivelmente como resultado de desgaste adicional causado pelas constantes tentativas do SpinRite). Eu executei o SpinRite em um disco rígido de 250 GB com falha no passado e ele funcionou por mais de um mês sem concluir. Em resumo: tente o ddrescue e outras ferramentas primeiro.
22613 rob rob
2
@rob obrigado, eu não percebi isso. O Suporte técnico do GRC confirmou para mim que a recuperação para algo diferente do disco em que a recuperação é tentada não é suportada na versão atual do SpinRite.
Graham Perrin
o cara polêmico que fez spinrite foi pego dizendo muita besteira no começo dos anos 2000; Lembro-me dele escrevendo sobre 'bits fracos', algo que simplesmente não existe, por exemplo.
Thomas
0

Parece que a maioria das unidades realocará apenas um bloco defeituoso em uma gravação, e é assim que todos os processos 'corrigem' blocos defeituosos. Se você estiver disposto a reformatar, muitas pessoas falam sobre criar um formato de baixo nível que grave zeros (o Disk Utility fará isso).

A única ferramenta que encontrei no Mac que faz isso é a "Speed ​​Tools". Quando encontra um bloco defeituoso, ele grava zero no bloco (mesmo que esteja em um arquivo ... o pensamento é que já está ruim).

http://www.intechusa.com/

Aerickson
fonte
Não é isso que um formato de baixo nível faz, ou mesmo qualquer tipo de formato, pois o formato não significa apagar, significa colocar a unidade em um formato que permita usá-la. Um formato de baixo nível decide onde colocar as faixas e os setores no disco e é necessário apenas uma vez quando a unidade é fabricada.
Chai T. Rex
Se você ler um pouco mais, verá que o artigo vinculado menciona que "formatação de baixo nível" passou a significar escrever o mesmo valor para todos os blocos. pt.wikipedia.org/wiki/Disk_formatting#Disk_reinitialization
aerickson
Se você ler um pouco mais, verá que isso ainda está incorreto.
Chai T. Rex
0

Atenção primeiro ao comentário de @chronos… think: dataloss. Em um caso extremo, uma correção pode impossibilitar a recuperação de dados.


Entre os utilitários que usei em Macs, um é excelente para alertas inconfundíveis como este:

insira a descrição da imagem aqui

Aviso

A operação que você está prestes a executar pode causar perda de dados.

Para poupar um bloco defeituoso ... escreva dados na unidade. Provavelmente, isso resultará em corrupção de volume ou de dados se um bloco incorreto for encontrado e poupado.

Você pode aprender sobre essas coisas antes de comprar o produto - honestamente refrescante.

(Para avaliar o risco do dataloss, consulte, por exemplo, a documentação do SpinRite vinculada à parte Por que se importar? Da minha resposta em Como verificar se há um setor defeituoso em um disco rígido USB no OS X? )

Por seus avisos inconfundíveis, por satisfação na pré-compra e muito mais, esta resposta é meu voto de confiança em:

Drive Genius 3

Graham Perrin
fonte
Em Ask Different, há um comentário de @BSDGuy
Graham Perrin
-1

Horrível, Horrível aconselhar acima. Quero dizer WOW-horrível aconselhar. : balança a cabeça:

  1. Não conheço nenhum utilitário moderno para o Mac OS X que conserte (marque) os blocos defeituosos e permita que você continue seu dia. Dito isto, você precisa encontrar uma versão mais antiga do Norton Utilities para Mac OS para corrigir os blocos defeituosos no HD em questão. Como a versão 7.0 ou 8.0.

  2. Como suponho que você esteja usando um PC na roupa de Mac (computador pós PPC usando uma CPU intel e executando o Unix [Mac OS X]), você precisará encontrar um bom Macintosh PPC (ou talvez ele execute emulação no um PC intel?) que ainda pode inicializar o OS 9. Obtenha uma (estou supondo que você tenha um SATA HD?) Placa PCI SATA que funcione com o OS 9. Em seguida, inicialize o CD do Norton, execute o Disk Doctor e verifique / repare o HD em questão.

  3. Isso parece difícil de fazer, mas não é. Sendo um técnico de Mac "REAL" e fã de garotos nos últimos 20 anos, tenho máquinas desde 128k até um Dual G5, então o hardware está à minha volta. Em outras palavras, é super fácil para mim.

  4. Por que eu pareço rude? Porque eu sou. Estou muito zangado com a Apple atual e detesto Steve Jobs por destruir a Apple Computer para nós, usuários dos Macintosh dos anos 80 e 90, e transformar o Mac em nada mais que um PC que roda uma versão branda do Unix. Ele e as pessoas que pensam como ele são a razão pela qual os Mac não têm mais os utilitários necessários para reparar seu HD "adequadamente".

  5. Qualquer pessoa que diga para examinar os dados SMART ou confie nos dados SMART de qualquer forma, você não deve ouvi-los. O SMART é extremamente falho.

  6. Os HDs quase sempre remapearam os blocos defeituosos automaticamente, pelo menos desde que me lembro e estou velho para um técnico. MAS! Eles fazem um trabalho de baixa qualidade e, se você estiver vendo blocos defeituosos, é porque o HD ficou sem a pequena quantidade de espaço reservada para o mapeamento automático de blocos defeituosos. IE, você precisa executar um utilitário que faça um trabalho melhor nele.

NotAnMSFan
fonte