Erros APFS: fsck não pode reparar

12

TL; DR

Fez a mesma pergunta nas comunidades da Apple, nada de útil. Encontre o post aqui: https://discussions.apple.com/thread/8123614

bash-3.2# fsck_apfs -d -l /dev/disk5
fletcher64_init:58: Selecting AVX2 implementation of fletcher64
** Checking volume.
** Checking the container superblock.
** Checking the EFI jumpstart record.
** Checking the space manager.
** Checking the object map.
** Checking the APFS volume superblock.
warning: apfs_sb at apfs_fs_index (0): apfs_features has unrecognized features (2)
** Checking the object map.
** Checking the fsroot tree.
error: btn: key (2) compare error: 22
   fsroot tree is invalid.
** The volume /dev/disk5 could not be verified completely.

Hardware iMac (27 polegadas, final de 2013), SSD de 256 GB, nada de especial, nada de especial.

Problema de hardware padrão e estou certo de que esse hardware é impecável, já que eu executo o Linux / Freebsd nele.

O Drive é uma GPT padrão particionada única para nova instalação do High Sierra. Simplesmente apaguei a unidade inteira, defini um novo esquema GPT, formatei-o como HFS + e iniciei o instalador a partir do USB. Isso deu certo, mas depois de alguns dias, verifiquei o volume após uma queda de energia e descobri que não posso mais repará-lo ...

O Disk Utility.app diz o mesmo que o fsck faz. De qualquer forma, o Disk Utility está executando o fsck em segundo plano, se você acha que não está, inicie o Disk Utility diretamente através do Terminal e você o verá no stdout.

Não consegui encontrar nenhuma documentação útil, apenas alguns mambo-jumbo com sabor de marketing sem nenhuma profundidade técnica.

Instalei a versão 10.13.1 Public Beta com a esperança de que talvez reconheça os recursos não reconhecidos , agora ele diz mais ou menos o mesmo e ainda não pode reparar o volume - embora não reclame de recursos não reconhecidos.

Li em algum lugar que o APFS está intimamente relacionado ao ZFS, então talvez alguém possa trabalhar com ferramentas do ZFS ou outro software que foi projetado explicitamente para reparar o APFS de maneira semelhante a uma história anterior: http://dtrace.org/blogs/ahl/2016/ 15/06 / apple_and_zfs /

Subtópicos

  • Existe uma maneira de desativar o APFS no SSD?
  • Existe uma maneira de converter de volta para o HFS +

Durante a instalação, o instalador não perguntou sobre a conversão (ou talvez eu tenha perdido) e agora estou preso a uma unidade que não posso usar.


Atualização II : Depois de ler um pouco sobre o ZFS e depois as referências da entrada da Wikipedia sobre o APFS (corrija-me se estiver errado), a implementação do APFS deve resolver todas as falhas por si só e, teoricamente, não há necessidade de um comando fsck. Bem, pensando bem, eu nunca tive que fsck um volume BTRFS, se houve alguns problemas que foram eliminados no momento da inicialização, acho que é assim que o APFS deve funcionar também - já que a tolerância a falhas é um dos principais recursos.

Mais detalhes técnicos da APFS de engenharia reversa estão aqui

Atualização III (01.01.2018)

Após algumas semanas de teste de APFs em hardware Apple e não Apple nativo, realizando muitos testes comuns e outros não tão comuns - recomendo ficar longe dele até que o kernel do Linux consiga montar um volume APFS em R / W modo. Pela minha experiência, pode-se esperar um dia muito ruim se o armazenamento baseado em APFS travar por algum motivo e não conseguir se recuperar automaticamente. Na maioria dos casos, ele faz o trabalho e pode se consertar - no entanto, em 8 semanas, eu cheguei em mais de 5 casos em que não conseguiu - apesar de nenhuma falha de hardware. Não fui capaz de reparar / reutilizar o volume sem reformatar, portanto, não estou usando o APFS até que esteja bem documentado e montável no Linux no modo R / W para qualquer outra coisa que não seja os arquivos do sistema.

SSD vs. não SSD Se você estiver executando o APFS em não SSD: será mais lento que o HFS. Período. O APFS (atualmente) é apenas razoável em unidades SSD internas e pode estar em unidades híbridas (embora o instalador da Apple não concorde). Os discos rígidos magnéticos não se beneficiam do APFS de forma alguma. O desempenho da unidade SSD externa não é realmente comparável, pois a quantidade de dados que você pode extrair através do USB-C é limitada e o HFS + não será um gargalo.

PJJ
fonte
Qual é a configuração de memória deste computador? Seja o mais específico possível - quais são as especificações exatas para a RAM em cada slot e alguma dessas RAM não é da Apple?
Greg Glockner
1
Eu tenho 3 máquinas, cada uma delas tem o mesmo problema com o fs, transplantei o volume em usb e até o instalei em uma unidade diferente, mesmo assim não consegui repará-lo e limpá-lo.
PJJ
Não tive sorte em reparar um volume APFS corrompido. Eu tive que restaurar do backup.
Greg Glockner
Enquanto isso, parece haver algum driver apfs de engenharia reversa de código aberto, cf: github.com/sgan81/apfs-fuse tropeçou nessa e na sua história, pois estou tendo esse problema um pouco semelhante. apple.stackexchange.com/questions/323883/…
Rene Pickhardt
alguns softwares de código aberto para manter o olho na recuperação python github.com/cugu/afro / FPAs editor hex github.com/ydkhatri/APFS_010
johndpope

Respostas:

4

O mesmo conselho que os fóruns da Apple. Faça backup e reformate seu sistema.

A Apple ainda não divulgou uma especificação ou código APFS. Como você descobriu, apenas a engenharia reversa muito grosseira foi realizada. Tentar interpretar que chave 2 não compara na fsrootárvore é pura especulação neste momento.

Não há como converter de volta para o HFS + . Existe uma maneira não oficial de optar por não participar.

Não há necessidade de um fsckcomando significa que o FS tentará corrigir qualquer coisa errada on-the-fly on-line. Nenhum sistema de arquivos pode ser imune a todos os possíveis danos ou bugs de implementação. Se algo não puder ser corrigido fsckoffline, realmente não há chance de consertá-lo online.

No entanto, um cenário potencial é um bug com fscke não o código do sistema, mas novamente isso é pura especulação sem ser capaz de entender o que está errado. A escolha é sua, mas uma reformatação é o ponto mais seguro.

user71659
fonte
Eu não quero fazer isso a cada poucos dias - isso não é uma opção a longo prazo.
PJJ
É possível, mas não é provável que você tenha encontrado um bug. Se você reformatar e reinstalar e o erro persistir, consideraria um possível erro de hardware como sendo (e possivelmente mais) provavelmente um bug no APFS.
Steve Chambers
Pode ou não - o problema é que não há documentação, fontes ou nada. Pode-se descobrir sinalizadores fsck_apf pesquisando no binário - portanto, aconselho a ficar longe do APFS até o dia em que o kernel do linux possa montar volumes APFS no modo r / w.
PJJ
2

Tente verificar sua RAM.

Eu tive um problema semelhante com o 10.13 (High Sierra) em um iMac 2017 (18,3) com um SSD de fábrica e RAM de terceiros. Recebi repetidos congelamentos e o Disk Utility First Aid relatou erros como "O mapa de objetos é inválido" e conclui "A verificação ou reparação do sistema de arquivos falhou". Cada vez, eu reformatava o SSD e reinstalava o macOS e o software, mas o problema retornava após alguns dias. Ele passou no Apple Diagnostics e minha Apple Store local não conseguiu detectar nenhum problema de hardware (depois que removi a RAM de terceiros). Não tive problemas em vários outros computadores, incluindo dois outros iMacs, um MacBook e várias máquinas virtuais do macOS.

O que foi corrigido para mim foi corresponder à RAM por banco, ou seja, o Banco 0 (DIMM 0/1) contém um par de RAM da Apple correspondente e o Banco 1 (DIMM 0/1) contém um par de RAM de terceiros.

Atualização 2018-01-06: Acabei de receber outra falha após 1 semana. (Este é o problema com falhas aleatórias). Eu removi temporariamente a RAM de terceiros enquanto fazia mais testes.

Atualização 2018-01-22: Após 10 dias com nova RAM, o problema não ocorreu. Acredito que meu problema foi causado por falta de RAM. (Talvez o APFS use RAM como cache?).

Greg Glockner
fonte
Olá Greg, eu mais ou menos voltei ao HFS - por experiência própria, recomendo que fique longe do APFS até que a Apple libere as fontes / documentação adequada e a implementação de terceiros. Em suma - não toque APFS até o kernel linux dia pode montá-lo :)
PJJ
Utilizado desde o primeiro dia oficial sem problemas. Eu acho que o APFS não é o problema aqui. Pode ser um hardware ruim.
Paul-Sebastian Manole
0

Consegui recuperar arquivos depois de criar uma imagem de disco da partição APFS corrompida e ela pode ser montada.

WeiZhi Shi
fonte