Erreurs APFS: fsck ne peut pas réparer


12

TL; DR

Poser la même question sur les communautés Apple, rien d'utile. Trouvez l'article ici: 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.

Matériel iMac (27 pouces, fin 2013), SSD stock de 256 Go, rien de spécial, rien d'extraordinaire.

Matériel standard et je suis certain que ce matériel est impeccable, car j'utilise Linux / Freebsd dessus.

Drive est un GPT partitionné par défaut pour une nouvelle installation de High Sierra. J'ai simplement effacé tout le lecteur, défini un nouveau schéma GPT, formaté en HFS + et démarré le programme d'installation à partir d'USB. Cela s'est bien passé, mais après quelques jours, j'ai vérifié le volume après une panne de courant et j'ai constaté que je ne pouvais plus le réparer ...

Disk Utility.app dit la même chose que fsck . L'Utilitaire de disque exécute essentiellement fsck en arrière-plan de toute façon, si vous pensez que ce n'est pas le cas, démarrez l'Utilitaire de disque directement via Terminal et vous le verrez dans stdout.

Je n'ai trouvé aucune documentation utile, juste du mambo-jumbo à saveur marketing sans aucune profondeur technique.

J'ai installé la version 10.13.1 Public Beta dans l'espoir qu'elle reconnaîtra peut-être les fonctionnalités non reconnues , maintenant elle dit plus ou moins la même chose et ne peut toujours pas réparer le volume - même si elle ne se plaint pas des fonctionnalités non reconnues.

J'ai lu quelque part qu'APFS est étroitement lié à ZFS, donc peut-être que l'on peut travailler avec des outils ZFS ou d'autres logiciels qui sont explicitement conçus pour réparer APFS similaire à une histoire ici: http://dtrace.org/blogs/ahl/2016/ 06/15 / apple_and_zfs /

Sous-thèmes

  • Existe-t-il un moyen de désactiver APFS sur SSD?
  • Existe-t-il un moyen de reconvertir en HFS +

Pendant l'installation, le programme d'installation n'a pas posé de question sur la conversion (ou peut-être que je l'ai manquée) et maintenant je suis coincé avec un lecteur que je ne peux pas utiliser.


Mise à jour II : Après avoir lu un peu sur ZFS , puis les références d'une entrée Wikipedia sur APFS (corrigez-moi si je me trompe), la mise en œuvre d'APFS devrait prendre soin de tous les défauts de lui-même, et, théoriquement, il n'y a pas besoin d'une commande fsck. Eh bien, en y réfléchissant, je n'ai jamais eu à fsck un volume BTRFS non plus, s'il y avait des problèmes qui ont été nettoyés au démarrage, devinez que c'est ainsi qu'APFS est censé fonctionner aussi - puisque la tolérance aux pannes est l'une de ses principales fonctionnalités.

Plus de détails techniques par reverse engineering APFS sont ici

Mise à jour III (07.01.2018)

Après quelques semaines de tests APF sur du matériel natif Apple et non Apple en faisant beaucoup de tests communs et pas si communs - je recommande de rester à l'écart jusqu'à ce que le noyau Linux soit capable de monter un volume APFS en R / W mode. D'après mon expérience, on peut s'attendre à avoir une très mauvaise journée si votre stockage basé sur APFS se bloque pour une raison quelconque et ne sera pas en mesure de guérir automatiquement. Dans la plupart des cas, il fait le travail et peut se réparer lui-même - mais en 8 semaines, j'ai atterri dans plus de 5 cas où il n'a pas pu - malgré aucune défaillance matérielle. Je n'ai pas pu réparer / réutiliser le volume sans reformater donc je n'utilise pas APFS jusqu'à ce qu'il soit bien documenté et montable sous Linux en mode R / W pour autre chose que les fichiers système.

SSD vs non-SSD Si vous exécutez APFS sur un non-SSD: il sera plus lent que HFS. Période. APFS n'est (actuellement) raisonnable que sur les disques SSD internes et peut l'être sur des disques hybrides (bien que le programme d'installation d'Apple ne soit pas d'accord). Les disques durs magnétiques ne bénéficient en aucun cas d'APFS. Les performances des disques SSD externes ne sont pas vraiment comparables car la quantité de données que vous pouvez presser via USB-C est limitée et HFS + ne sera pas un goulot d'étranglement.


Quelle est la configuration de la mémoire pour cet ordinateur? Veuillez être aussi précis que possible - quelles sont les spécifications exactes de la RAM dans chaque emplacement, et y a-t-il une de ces RAM non Apple?
Greg Glockner

1
J'ai 3 machines, chacune a le même problème avec le fs, j'ai transplanté le volume en usb et l'ai même fait sur un disque différent, tout de même je n'ai pas pu le faire réparer et nettoyer.
PJJ

Je n'ai eu aucune chance de réparer un volume APFS corrompu. J'ai dû restaurer à partir d'une sauvegarde.
Greg Glockner

en attendant, il semble y avoir un pilote open source d'ingénierie inversée cf: github.com/sgan81/apfs-fuse est tombé sur cela et votre histoire depuis que j'ai ce problème quelque peu similaire apple.stackexchange.com/questions/323883/…
Rene Pickhardt

un logiciel open source pour garder un œil sur la récupération de python github.com/cugu/afro / apfs hex editor github.com/ydkhatri/APFS_010
johndpope

Réponses:


4

Même conseil que les forums Apple. Sauvegardez et reformatez votre système.

Apple n'a pas encore publié de spécification ou de code APFS. Comme vous l'avez constaté, seule une ingénierie inverse très grossière a été effectuée. Essayer d'interpréter la mauvaise comparaison de la clé 2 dans l' fsrootarbre est une pure spéculation à ce stade.

Il n'y a aucun moyen de reconvertir en HFS + . Il existe cependant un moyen non officiel de se retirer .

Il n'y a pas besoin d'une fsckcommande signifie que le FS essaiera de réparer quoi que ce soit de mal à la volée, en ligne. Aucun système de fichiers ne peut être à l'abri de tout dommage potentiel ou bogue d'implémentation. Si quelque chose ne peut pas être réparé fsckhors ligne, il n'y a vraiment aucune chance de le faire réparer en ligne.

Cependant, un scénario potentiel est un bogue avec fscket non le code système, mais encore une fois, c'est de la pure spéculation sans pouvoir comprendre ce qui ne va pas. C'est votre choix, mais un reformatage est le point le plus sûr.


Je ne veux pas le faire tous les quelques jours - ce n'est pas une option à long terme.
PJJ

Il est possible mais peu probable que vous ayez rencontré un bogue. Si vous reformatez et réinstallez et que l'erreur se reproduit, je considérerais une erreur matérielle possible comme étant (et peut-être plus) probablement un bogue dans APFS.
Steve Chambers

Peut-être ou non - le problème est qu'il n'y a pas de documentation, pas de sources, rien. On peut découvrir les drapeaux fsck_apf en cherchant dans le binaire - donc je conseille de rester loin d'APFS jusqu'au jour où le noyau linux pourra monter des volumes APFS en mode r / w.
PJJ

2

Essayez de vérifier votre RAM.

J'ai eu un problème similaire avec 10.13 (High Sierra) sur un iMac 2017 (18,3) avec un SSD d'usine et une RAM tierce. J'ai eu des gels répétés et les premiers soins de l'Utilitaire de disque ont signalé des erreurs telles que «La mappe d'objets n'est pas valide» et conclut «Échec de la vérification ou de la réparation du système de fichiers». Chaque fois, je reformaterais le SSD et réinstallerais macOS et les logiciels, mais le problème reviendrait après quelques jours. Il a réussi les diagnostics Apple et mon Apple Store local n'a pu détecter aucun problème matériel (après avoir supprimé la mémoire RAM tierce). Je n'ai eu aucun problème sur plusieurs autres ordinateurs, dont 2 autres iMac, un MacBook et plusieurs machines virtuelles macOS.

Ce qui m'a corrigé était de faire correspondre la RAM par banque, c'est-à-dire que la banque 0 (DIMM 0/1) contient une paire de RAM Apple et la banque 1 (DIMM 0/1) contient une paire de RAM tierce correspondante.

Mise à jour 2018-01-06: vient d'obtenir un nouvel échec après 1 semaine. (C'est le problème des échecs aléatoires). J'ai temporairement supprimé la RAM tierce pendant que je fais plus de tests.

Mise à jour 2018-01-22: Après 10 jours avec une nouvelle RAM, le problème ne s'est pas produit. Je crois que mon problème a été causé par une mauvaise RAM. (Peut-être qu'APFS utilise de la RAM comme cache?).


Salut Greg, je suis plus / moins revenu à HFS - d'après mon expérience personnelle, je conseille fortement de rester loin d'APFS jusqu'à ce qu'Apple publie les sources / la documentation appropriée et qu'il y ait une implémentation tierce. En bref - ne touchez pas APFS jusqu'à ce que le noyau Linux puisse le monter :)
PJJ

Je l'utilise depuis le premier jour sans aucun problème. Je pense qu'APFS n'est pas le problème ici. Un mauvais matériel pourrait être à la place.
Paul-Sebastian Manole

0

J'ai pu récupérer des fichiers après avoir créé une image disque à partir de la partition APFS corrompue et elle peut être montée.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.