10.13 High Sierra Récupérer données APFS container corrompu

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
Je vois que le volume Sophie est en format apfs et recèle 287 Go de données.

Passe d'abord la commande :
Bloc de code:
csrutil disable

  • qui désactive le SIP (protocole de sécurisation). Cette désactivation permettra d'avoir les coudées franches dans la session toto => pour inspecter la base de données du Service d'Annuaire.

Passe ensuite la commande (avec la plus grande exactitude) -->
Bloc de code:
rm /Volumes/Sophie/var/db/.AppleSetupDone
(un espace entre rm et /Volumes--- ; pas d'espace (!) entre db/ et .AppleSetupDone)
  • cette commande supprime un fichier de finalisation vide dans le volume Sophie --> ce qui va te permettre de ré-obtenir les panneaux de paramétrage du Mac / création d'un compte admin comme à la fin d'une 1ère installation
  • re-démarre normalement (Menu  > Disque de démarrage > choisis Sophie > redémarre dessus) --> à la fin du chargement de l'OS > au lieu d'avoir l'écran de connexion > tu vas toucher la série des panneaux de paramétrage du Mac (Pays etc.). Renseigne tout avec exactitude.
  • le dernier panneau te permet de créer un compte admin : ne reprends surtout pas les identifiants de ton compte > choisis : Nom complet = toto > nom de compte = toto > mot-de-passe = toto.

Tu ouvres une session toto --> confirme si c'est bien le cas.
 

PedroMAC

Membre junior
6 Septembre 2008
66
1
Ça marche parfaitement, je suis bien connecté sur la session toto et j'accède bien aux données du user Sophie.
Reste à pouvoir se reconnecter à sa session.
Merci pour tout ceci, quelle est la marche à suivre ?
 

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
J'ai préparé mon brouillon en anticipation de ton succès. Ce qui me pemet de poster illico.

----------

Logé dans ta session toto > commence par aller à la barre de menus supérieure du Finder : Finder > Préférences > Général -->

- coche les cases d'affichage de : "Disques durs" & "Disques externes"​

=> le volume Sophie est affiché sur le Bureau (au cas où ce n'aurait pas été le cas).

----------

Tu trouves le Terminal de macOS dans le volume Sophie at: Applications > Utilitaires > Terminal.

Lance-le et passe les commandes (copier-coller ; une seule à la fois) :
Bloc de code:
sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'
diskutil listUsers / | grep -v '.*[\^\_\].*'
dscl . -list /Users home | grep -v '.*[\^\_\].*'
sudo du -sh /Users/*

  • tu t'authentifies en aveugle avec le mot-de-passe toto après exécution de la 1ère et tu revalides (commande sudo). Pas besoin pour le 2è sudo.
  • la 1ère liste les fichiers identitaires d'utilisateurs à noms pleins (recelés dans la base de données du Service d'Annuaire)
  • la 2è liste en correspondance : nomcourt (Short Name) / nom complet (Long Name) pour les mêmes
  • la 3è affiche en correspondance nomcourt / adresse au dossier d'ouverture de session pour les mêmes
  • la 4è liste & mesure les dossiers domiciles du répertoire des Utilisateurs

=> poste tous les affichages retournés dans une fenêtre de code.
 

PedroMAC

Membre junior
6 Septembre 2008
66
1
1ère commande :
Bloc de code:
Guest.plist
daemon.plist
nobody.plist
root.plist
toto.plist

2ème commande :
Bloc de code:
USERS
-----

Disk: disk1s1
Volume: Sophie
Mountpoint: /

UID       Short Name                      Long Name
------------------------------------------------------------------------
501       toto                            toto
-2        nobody                          Unprivileged User
201       Guest                           Utilisateur invité
0         root                            System Administrator
1         daemon                          System Services

3ème commande :
Bloc de code:
USERS
-----

Disk: disk1s1
Volume: Sophie
Mountpoint: /

UID       Short Name                      Long Name
------------------------------------------------------------------------
501       toto                            toto
-2        nobody                          Unprivileged User
201       Guest                           Utilisateur invité
0         root                            System Administrator
1         daemon                          System Services
MacBook-Pro-de-Sophie:~ toto$ dscl . -list /Users home | grep -v '.*[\^\_\].*'
daemon                  /var/root
Guest                   /Users/Guest
nobody                  /var/empty
root                    /var/root
toto                    /Users/toto

4ème commande :
Bloc de code:
  0B    /Users/Guest
12K    /Users/Shared
209G    /Users/sophiemaillard
339M    /Users/toto
 
  • J’aime
Réactions: litobar71

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
Tout est clair comme l'eau de source en montagne -->

- on voit dans le dernier tableau un dossier domicilaire : sophiemaillard (contenant 209 Gi = 225 Go de données). On en déduit que le nomcourt de l'utilisatrice était sophiemaillard et son nom complet : Sophie Maillard.​

- or cette utilisatrice n'est pas reconnue comme existante par le Système (ni dans le 2è tableau des utilisateurs recensés > ni dans le où le nomcourt se trouve associé à l'adresse au dossier d'ouverture de session).​

- et pourquoi ? => car (1er tableau) aucun fichier identitaire sophiemaillard.plist n'existe dans la base de données du Service d'Annuaire > pour permettre de faire valoir cette existence pour le Système. Il ne s'agit plus d'une corruption de fichier identitaire > mais d'une suppression carrément.​

=> ce qui permet une recréation directe de l'identité de l'utilisatrice > qui va donc recréer un fichier sophiemaillard.plist dans la base de données users du Service d'Annuaire -->

- d'accord et go ?​
 
  • J’aime
Réactions: litobar71

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
Va à : Menu  > Préférences Système > Utilisateurs & groupes > déverrouille le cadenas > bouton + pour créer un nouvel utilisateur > et tu recrées ainsi ton identité -->

  • Nouveau compte = Administrateur > Nom complet = Sophie Maillard > Nom du compte = sophiemaillard (il faut absolument que ce soit cet intitulé ici) > Mot de passe = le même qu'avant (important pour le Trousseau de session) > Confirmation : idem => Créer l'utilisateur
  • un panneau va déclarer qu'il existe déjà un dossier de ce nom (sophiemaillard) dans les Utilisateurs et te demandant si tu veux l'utiliser comme dossier de départ de session ? => presse le bouton bleu : "Utiliser le dossier existant"

=> en conséquence > un fichier identitaire sophiemaillard.plist va être recréé at: /private/var/db/dslocal/nodes/Default/users/ sophiemaillard.plist > avec des écritures valides > dont à la clé home cette adresse : /Users/sophiemaillard => qui va te permettre de réouvrir ta session sur ton dossier de compte plein de données.

Cela fait > vois-tu affichée l'utilisatrice : Sophie Maillard, Admin dans la colonne de gauche des Utilisateurs & groupes ?
 

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
2 commandes de finalisation et ce sera réglé.

- passe d'abord la commande informative :
Bloc de code:
sudo defaults read /private/var/db/dslocal/nodes/Default/users/sophiemaillard.plist home

  • qui lit dans le nouveau fichier identitaire : sophiemaillard.plist => le chemin au dossier d'ouverture de session associé à la clé : home (= domicile)

Poste le retour. Pour bien faire > il faut que la réponse soit -->
Bloc de code:
(
    "/Users/sophiemaillard"
)
 

PedroMAC

Membre junior
6 Septembre 2008
66
1
Pardon, erreur de capture, c'est mieux ainsi :
Bloc de code:
MacBook-Pro-de-Sophie:~ toto$ sudo defaults read /private/var/db/dslocal/nodes/Default/users/sophiemaillard.plist home
Password:
(
    "/Users/sophiemaillard"
)
 

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
Chemin d'ouverture de session valide.

Dernière commande -->
Bloc de code:
sudo chown -R sophiemaillard /Users/sophiemaillard

  • la commande confirme (s'il en était besoin) l'utilisatrice sophiemaillard => en propriétaire du dossier sophiemaillard (des Utilisateurs) et de tous ses contenus

=> est-ce que tu as eu un retour ?
 

macomaniac

Ouroboros
Club MacG
20 Septembre 2012
81 334
24 633
Forêt de Fontainebleau
Classique et sans importance.

Redémarre
une fois > et à l'écran d'ouverture de session => loge-toi comme Sophie Maillard (Nom complet toujours affiché à cet écran) -->

- tu n'as qu'à dire si tu as bien pu réouvrir ta session et retrouver ton environnement...​