Recuperando um disco de um Mac dos Anos 90 com Linux

Recentemente recebi uma mensagem pelo site do Piso que dizia o seguinte: “Queria saber se vocês conseguem recuperar informação de velhos Macs”. Troquei algumas mensagens com o Miguel e descobri que se tratavam de dois HDs (um de um Macintosh IIvx e um de um Powerbook 190). Fiquei de fazer um teste e ver se era capaz de extrair o conteúdo do HD que veio no Performa 450 (LC III).

O objetivo era simples: criar uma imagem completa do disco, montar seu sistema de arquivos HFS no Linux e recuperar os documentos armazenados nele.

A primeira coisa a se fazer foi ligar um computador de maneira provisória sobre a mesa e fazer boot com um HD com Ubuntu instalado. Tinha uma placa SCSI Tekram DC-310 que é facilmente reconhecida em Linux e foi nela que liguei o HD do Performa para ver se isso era realmente possível.

Pedi ajuda ao ChatGPT com os comandos para usar no terminal e depois ainda pedi que ele fizesse a estrutura desse post aqui. Editei bastante, adicionei imagens, mas esse aviso é importante.

Depois de alguns testes, encontrei um fluxo de trabalho bastante confiável que funcionou tanto para o disco de 120 MB do Performa, como depois posteriormente para os discos do computadores do Miguel.

1. Identificando o disco SCSI

Após instalar uma controladora SCSI PCI e conectar o disco, o primeiro passo foi verificar se o Linux o reconhecia:

lsblk

No meu caso, o disco apareceu como:

/dev/sdb

Perfeito!

2. Criando uma imagem do disco

Para preservar o conteúdo original, a primeira tarefa é criar uma imagem binária completa do disco.

sudo dd if=/dev/sdb of=~/scsi_120Mb.img bs=4M status=progress conv=noerror,sync

Onde:

  • if= define o disco de origem;
  • of= define o arquivo de destino;
  • bs=4M utiliza blocos maiores para acelerar a cópia;
  • status=progress exibe o progresso;
  • conv=noerror,sync faz com que a cópia continue mesmo diante de setores defeituosos.

Para discos com muitos erros de leitura, o ideal é utilizar ddrescue, que realiza tentativas mais inteligentes de recuperação.

3. Descobrindo a estrutura de partições

Com a imagem criada, podemos analisar sua tabela de partições:

sudo parted ~/scsi_120Mb.img print

O resultado com um disco do Miguel foi:

Number Start End Size File system Name
1 512B 24.1kB 23.6kB Apple
2 24.1kB 65.5kB 41.5kB FWB Disk Driver
3 65.5kB 245MB 245MB hfs MacOS

A partição que interessa é a partição HFS, neste caso a número 3.

4. Calculando o offset

Para montar apenas a partição HFS, precisamos calcular seu deslocamento dentro da imagem, ou seja, o local em bytes onde ela começa..

O início da partição é:

65.5 kB

Convertendo para bytes (porque sabemos que nessa época a grande maioria dos discos tinham 512 bytes por setor):

65.5 kB = 65536 bytes

Outra forma de pensar é:

128 setores × 512 bytes = 65536 bytes

Esse valor será usado no parâmetro offset.

5. Criando um ponto de montagem

sudo mkdir -p /mnt/mac

6. Montando o sistema de arquivos HFS

Agora podemos montar a partição HFS em modo somente leitura (ro = read-only):

sudo mount -t hfs -o ro,loop,offset=65536 ~/scsi_230Mb.img /mnt/mac

Após isso, os arquivos ficam acessíveis em:

/mnt/mac

O HD que usei de testes estava em francês e tudo correu muito bem aqui…

7. O problema dos nomes de arquivos

No caso de um dos HDs do Miguel, a instalação estava em Português e tinha ç, ã, etc. Ao abrir a pasta montada, muitos nomes apareciam corrompidos:

Aplica\215\233es
Utilit\223rios

Isso acontece porque os Macintosh clássicos utilizavam a codificação MacRoman, enquanto os sistemas atuais utilizam UTF-8. Os arquivos estavam íntegros, mas os nomes não eram exibidos corretamente.

8. Convertendo os nomes para UTF-8

A solução mais elegante foi utilizar o rsync com conversão automática de caracteres enquanto já copiava os arquivos da imagem gerada para uma pasta na Área de Trabalho do computador:

rsync -av --iconv=macintosh,utf-8 /mnt/scsi230/ ~/Desktop/scsi230_utf8/

A partir dessa pasta já é possível copiar os arquivos com os nomes corretos para outro lugar ou abrí-los e explorar seu conteúdo.

Considerações finais

Foi surpreendente perceber como discos Macintosh de quase trinta anos ainda podem ser lidos sem grandes dificuldades utilizando ferramentas disponíveis em uma distribuição Linux moderna.

O fluxo que funcionou foi:

  1. Identificar o disco com lsblk;
  2. Criar uma imagem com dd ou ddrescue;
  3. Examinar a tabela de partições com parted;
  4. Calcular o offset da partição HFS;
  5. Montar a imagem em modo somente leitura;
  6. Extrair os arquivos usando rsync --iconv=macintosh,utf-8.

Com esse procedimento foi possível recuperar documentos, programas e dados pessoais preservados em discos Macintosh que permaneceram guardados por décadas.

PS: o Miguel ainda teve algumas dificuldades ao abrir os documentos em um programa Word moderno num sistema operacional Windows. Ficava recebendo alertas da Central de Confiança. Uma busca rápida nos levou a instruções para permitir que arquivos de versões antigas do Word pudessem ser abertos sem esse bloquei e estava tudo resolvido!

PS2: em Linux, com o Libre Office, não houve qualquer dificuldade em abrir os documentos.

O que fazer com um Powermac G5?

Digitei a frase acima em diversas línguas no Google, tentei de toda maneira encontrar algo que não fosse simplesmente aproveitar o case do computador para colocar outro computador dentro.

O site Everymac mostra o preço de lançamento como 1999 dólares em 2005. http://www.everymac.com/systems/apple/powermac_g5/specs/powermac_g5_dual_2.0.html É muito dinheiro para algo realmente inútil hoje em dia. No mercado de usados um G5 vale menos que um Mac Mini Core Duo. O G5 além disso produz mais calor e gasta mais eletricidade, faz mais barulho.

O fato é que esse foi um dos últimos computadores a serem lançados com o chip PowerPC da IBM antes da mudança para Intel. Então apesar de ser um computador super poderoso que deveria durar até hoje, ele não pode usar os softwares e o OS disponíveis agora, ficou preso ao OSX 10.5.8.

E por outro lado não pode também ser usado como um computador vintage já que nesses modelos a Apple abandonou a expansão PCI que torna os computadores capazes de serem ligados a scanners antigos, por exemplo, com placas SCSI. Ou seja, um case enorme cheio de espaço, mas um computador inviável de expandir atualmente. Logo, o que fazer com um PowerMac G5?

Mac Mini • resgate

Para processar imagens ganhei um Mac Mini avariado. O computador não consegui reconhecer o HD dentro dele e a ventoinha estava disparada, a toda potência mesmo com o computador desligado e apenas ligado na rede elétrica, estranho.

Pesquisas e pesquisas apontaram para uma morte eminente da placa-mãe, mas porque não aproveitar o computador enquanto isso não acontece? Para tanto fui ao centro e descolei uma gaveta (ou case) para colocar o HD do lado de fora do computador, onde o problema de ser reconhecido não acontecia nos meus testes. E para sanar o “volume” da ventoinha descolei um potenciômetro de fio, de 100 ohms.

O bicho ficou assim, adeus belo design by Apple. Tentei não fugir demais dos materiais do computador e usei uns pedaço de acrílico, para aproveitar a saída de ar da ventoinha e colocar o HD bem na frente. O pino maior é onde agora se controla a potência da dita ventoinha.

 

mini

Pismo G3

Um grande amigo me deu de presente um laptop apagado. Um Pismo (Powerbook Firewire, ou o computador da Carrie, personagem do Sex in The City). O Pismo é famoso por sofrer quando sua bateria de PRAM falha. Essa é a bateria dá energia ao relógio interno do computador ou mesmo é acionada quando você aperta botão para ligar o aparelho. O Pismo sofria desse mal.

Além disso, a sua bateria principal, que o mantem ligado quando ele não está conectado à rede elétrica, estava mortinha. Não carregava de jeito nenhum, só piscava um luz informando um curto interno. A bateria de um laptop pode ser de diferentes químicas: NiMH, NiCd ou Li-ion. Essa era de Li-ion e para substituí-la só podem ser usadas baterias dessa mesma química, porque a maneira como o computador irá recarregar a bateria depende exclusivamente da química da qual ela é feita.

Uma bateria de laptop, de Li-ion, em geral é feita de células do tipo 18650 (esse é um padrão de tamanho da célula, parece uma pilha AA um pouco maior). Sai a procura de células similares para substituir as da bateria desse computador, imaginando que encontrar uma bateria completa, desse modelo tão antigo seria mais difícil. Novas são até fáceis de encontrar na região da Rua Sta Efigência, no entanto são bem caras.

Um amigo que trabalha numa multinacional me avisou de uma campanha para arrecadar lixo eletrônico nessa empresa e me ofereceu um lote de algumas baterias IBM de LI-ion. Desmontei algumas dessas baterias (que estavam sendo descartadas por estarem velhas, mas que ainda tinham alguma carga) e consegui substituir as células da bateria do Pismo. O computador ficou ligado cerca de um minuto com as células novas (novas para ele). E assim constatei que o problema da bateria do Pismo eram mesmo as células muito velhas.

Essas baterias não desenvolvem memória, o problema maior é um chip que reside junto às células, ele controla o quanto a bateria pode ser recarregada e quantas vezes e aos poucos diminui a carga máxima que a bateria pode aceitar, isso para evitar que as células de Li-ion explodam durante a recarga. Agora é só achar uma alma caridosa que possua um Lombard (irmão mais velho do Pismo) que rode um programa que faz um reset do chip da bateria do laptop, para que ele trate as células mais novas corretamente.

Tive que aprender tudo isso nesses últimos dias para tentar voltar a escanear pelas ruas.