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
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=4Mutiliza blocos maiores para acelerar a cópia;status=progressexibe o progresso;conv=noerror,syncfaz 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 Name1 512B 24.1kB 23.6kB Apple2 24.1kB 65.5kB 41.5kB FWB Disk Driver3 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.
O início da partição é:
65.5 kB
Convertendo para bytes:
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:
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

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\233esUtilit\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:
- Identificar o disco com
lsblk; - Criar uma imagem com
ddouddrescue; - Examinar a tabela de partições com
parted; - Calcular o offset da partição HFS;
- Montar a imagem em modo somente leitura;
- 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. 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!