Nós consertamos. Esta não é uma resposta canônica, mas pode conter informações úteis para futuros visitantes.
Todos sugeriram analisar o disco com o testdisk.
Analyzes a drive's current partition structure and finds partitions, making it possible to recover lost partitions.
O problema no nosso caso não era que estivéssemos perdendo partições, mas que as partições que eram não poderiam ser acessadas.
Nós dois não sabíamos nada sobre recuperação de dados, tabelas de partição, etc., então começamos a pesquisar e chegamos à a conclusão de que não havia algo errado com as partições, mas com a maneira como eles são "indexados" no disco. Achamos que isso foi gerenciado pela tabela de partições.
Analisamos o disco com testdisk várias vezes, com opções diferentes para o tipo de tabela de partição (não sabíamos o tipo originalmente, mas no final acabou sendo EFI GPT), esperando que o testdisk fosse capaz para encontrar alguns problemas com a tabela de partição que ela poderia restaurar para podermos acessar os dados novamente. Deixamos reescrever a tabela de partições depois de analisar várias vezes, mas nunca ajudou.
Antes de tentar diferentes soluções potenciais que ainda não conhecíamos, decidimos não correr nenhum risco e compramos um novo disco rígido de 3 TB e clonamos o antigo para isso.
Uma coisa estranha que notamos foi que quando analisamos o clone, o testdisk levou apenas cerca de um segundo para exibir os resultados, enquanto que o antigo demorava muitas horas. Também diria que detectou o tipo de tabela de partição como EFI GPT . O antigo tinha sido detectado como Linux e pelo menos um outro tipo, mas não EFI GPT .
Isso nos fez pensar que era muito possível que houvesse algo errado com o disco original relacionado a hardware. Nós pensamos Como um clone pode se comportar diferentemente do original se não existir?
Portanto, tudo parecia estar correto, mas este novo disco também não pôde ser montado. Diria
wrong fs type, bad option, bad superblock on /dev/sdb,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
e o dmesg diria
hfs: unable to find HFS+ superblock
Esse erro foi relatado para a esquerda e para a direita, mesmo aqui na SU, mas nenhuma das soluções propostas (por exemplo, "especificar o tamanho e o deslocamento durante a montagem") funcionou para nós.
Enquanto procurávamos por pistas, encontramos uma opção no menu avançado do testdisk chamado "Superblock" ou algo semelhante.
Neste menu, existem opções para comparar a estrutura do superbloco ao backup e para sobrescrever o backup. A primeira coisa que fizemos foi comparar os dois para ver se eles eram iguais.
Não havia dados no backup. O despejo hexadecimal mostrou apenas zeros. Nós imaginamos o que poderia dar errado sobrescrevendo um monte de nada , e deixamos o testdisk sobrescrevendo a estrutura de backup. Ele fez isso e nos disse para reiniciarmos para que as alterações entrassem em vigor.
Após a reinicialização, o ubuntu mostrou o disco no launcher (primeira vez que ele fez isso) e ao clicar nele, ele seria montado com sucesso, permitindo-nos ler os dados. ☺