iMac Session perdue sur iMac

Melancoly

Membre confirmé
10 Mars 2021
42
0
42
Bonjour,

Je viens vers vous car mon père a dû avoir un redémarrage dans la nuit avec son iMac et à son arrivé au bureau, il n'avait plus de choix de session, seulement la session "autre" était proposée ... avec un texte dessous "ordinateur verrouillé" -
Bien entendu il est impossible de m'identifier avec les identifiants habituels sur cette session.

J'ai fait des recherches sur le forum, j'ai vu des problèmes assez similaires, mais j'ai l'impression qu'ils sont à chaque fois traités au cas par cas donc je me permets de poster le miens ;)

Il est sous MAC OS 10.12.6 (sierra je crois), suite à une publication de @macomaniac j'ai pu sortir un log en suivant ses indications, d'ailleurs si tu es dans le coin j'espère que tu pourras nous aider car t'as l'air trop fort :p. On a eu des techniciens au tel mais galère...

J'étais beaucoup plus calée avant, j'ai bossé pour le journal du geek et infos du net / Tom's Guide. Mais aujourd'hui je suis très rouillée donc expliquez moi comme à une enfant de 10 ans la marche à suivre :D

Merci par avance.

IMG_7845.jpg
 
Dernière édition par un modérateur:
Bonjour Melancoly

L'OS installé est-il High Sierra ? (High Sierra 10.13 et pas Sierra 10.12)
 
On va conjecturer une corruption du fichier identitaire de l'utilisateur de type : machin.plist. Stocké dans la base de données : users du Service d'Annuaire => il établit l'existence de l'utliisateur pour le Système. Sa corruption entraîne la suppression d'existence pour le Système du même utilisateur. Les erreurs de programmation du Service d'Annuaire dans High Sierra ont fait de cette corruption un classique de cet OS. S'il s'agit de l'OS Sierra => reste à voir. Dans tous les cas de figures > la corruption du fichier identitaire machin.plist => laisse intact le dossier domiciliaire machin des Utilisateurs (où se trouvent les données).

- le Mac est un iMac à Fusion Drive associant SDD et HDD. Le volume collectif Macintosh HD n'est pas chiffré. Passe quand même la commande de vérification :​
Bloc de code:
diskutil info disk3
  • qui affiche un tableau d'informations sur le volume

Poste le retour.
 
On va conjecturer une corruption du fichier identitaire de l'utilisateur de type : machin.plist. Stocké dans la base de données : users du Service d'Annuaire => il établit l'existence de l'utliisateur pour le Système. Sa corruption entraîne la suppression d'existence pour le Système du même utilisateur. Les erreurs de programmation du Service d'Annuaire dans High Sierra ont fait de cette corruption un classique de cet OS. S'il s'agit de l'OS Sierra => reste à voir. Dans tous les cas de figures > la corruption du fichier identitaire machin.plist => laisse intact le dossier domiciliaire machin des Utilisateurs (où se trouvent les données).

- le Mac est un iMac à Fusion Drive associant SDD et HDD. Le volume collectif Macintosh HD n'est pas chiffré. Passe quand même la commande de vérification :​
Bloc de code:
diskutil info disk3
  • qui affiche un tableau d'informations sur le volume

Poste le retour.
 
On va conjecturer une corruption du fichier identitaire de l'utilisateur de type : machin.plist. Stocké dans la base de données : users du Service d'Annuaire => il établit l'existence de l'utliisateur pour le Système. Sa corruption entraîne la suppression d'existence pour le Système du même utilisateur. Les erreurs de programmation du Service d'Annuaire dans High Sierra ont fait de cette corruption un classique de cet OS. S'il s'agit de l'OS Sierra => reste à voir. Dans tous les cas de figures > la corruption du fichier identitaire machin.plist => laisse intact le dossier domiciliaire machin des Utilisateurs (où se trouvent les données).

- le Mac est un iMac à Fusion Drive associant SDD et HDD. Le volume collectif Macintosh HD n'est pas chiffré. Passe quand même la commande de vérification :​
Bloc de code:
diskutil info disk3
  • qui affiche un tableau d'informations sur le volume

Poste le retour.
Tiens! Merci de ton aide

F3AC6F4E-AAC0-41E8-81D8-A8BBEE4051A0.jpeg
 
Dernière édition par un modérateur:
Il faut que tu attaches le 3 à disk ainsi : disk3.

- repasse la commande exacte :​
Bloc de code:
diskutil info disk3
  • et poste le retour.
 
Le volume n'est pas monté en lecture seule. Mais il n'a que 3,8 Go d'espace libre > ce qui est très peu.

- passe encore la commande :​
Bloc de code:
ls /Vol*/Macin*
  • qui liste ses objets de 1er rang (fichiers ou dossiers)

Poste le retour.
 
Il y a la distribution complète d'un OS. Qui doit pouvoir démarrer.

- passe la commande (avec la plus grande exactitude) -->​
Bloc de code:
rm /Volumes/"Macintosh HD"/var/db/.AppleSetupDone
(un espace entre rm et /Volumes--- ; mets "Macintosh HD" avec les "" ; pas d'espace (!) entre HD" et la / qui suit ; pas d'espace (!) entre db/ et .AppleSetupDone)
  • cette commande supprime un fichier de finalisation vide dans le volume Macintosh HD --> 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 Macintosh HD > 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 propose de récupérer des données. Coche la case : "Ne pas récupérer de données maintenant" => ce qui 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 ça a bien été le cas. Si oui : on pourra depuis cette session inspecter l'état des comptes dans le volume démarré.
 
Parfait : on voit que l'OS est fonctionnel et que tu as bien pu ouvrir une session admin auxiliaire toto.

- va à la barre supérieure de menus du Finder : Finder > Préférences > Général => coche les cases d'affichage de : "Disques durs" & "Disque externes". Macintosh HD est alors affiché sur le Bureau.​

En y entrant > tu trouves un terminal at: Applications > Utilitaires > Terminal. Passe la commande :
Bloc de code:
csrutil status
  • qui affiche l'état du SIP (protocole de sécurisation)

Poste le retour en copier-coller > en veillant à faire le coller dans un Bloc de code (c'est plus lisible !) par le procédé suivant -->

- en bas de cette page des forums MacGé => utilise le menu (le 16è depuis la gauche = vers le milieu de la barre) dans la barre de menus au-dessus du champ de saisie d'un message > sous-menu : </> (= Bloc de code) => tu fais ton coller dans la fenêtre de code et Continuer.​

=> une activation du SIP entraverait la liberté de manœuvre requise pour inspecter / restaurer les comptes d'utilisateurs.
 
En effet.

----------

Pour désactiver le SIP > redémarre > les 2 touches ⌘R (cmd R) tenues pressées de l'écran noir => à la  = démarrage sur l'OS de secours. Tu obtiens un écran affichant une fenêtre de 4 Utilitaires macOS. Va à la barre de menus supérieure de l'écran > Menu Utilitaires > sous-menu : Terminal.

Lance-le et passe la commande :
Bloc de code:
csrutil disable
  • qui désactive le SIP

Cela fait > quitte le Terminal > va à : Menu  > Disque de démarrage > sélectionne Macintosh HD > redémarre dessus.

----------

De retour dans la session toto > passe les commandes (copier-coller - séparément) :
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 --> demande de password). Pas besoin pour le 2è sudo dans les 5'.
  • la 1ère liste les fichiers identitaires d'utilisateurs à noms pleins (= sans underscore _ initial caractérisant une floppée de "pseudo-utilisateurs"-Système) > recelés dans la base de données users du Service d'Annuaire
  • la affiche en correspondance nomcourt / nom complet pour les mêmes
  • la affiche en correspondance nomcourt / adresse au dossier d'ouverture de session pour les mêmes
  • la liste & mesure (en Gi = gibibytes : base 2) les dossiers domiciles du répertoire des Utilisateurs. Elle est très lente d'exécution => attends le retour de l'invite de commande terminée par toto$ en signal de fin.

=> poste tous les affichages retournés dans un Bloc de code --> on saura tout ce qu'il y a à savoir sur la situation du compte d'utilisateur admin originel.
 
Last login: Thu Mar 11 10:01:51 on ttys000


iMac-de-MARTIAL-2:~ toto$ sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'


Password:


daemon.plist


martialguillouet.plist


nobody.plist


root.plist


toto.plist


iMac-de-MARTIAL-2:~ toto$ diskutil listUsers / | grep -v '.[\^\_\].'


USERS


-----





Disk: disk2


Volume: Macintosh HD


Mountpoint: /





UID Short Name Long Name


------------------------------------------------------------------------


1 daemon System Services


0 (null) (null)


-2 nobody Unprivileged User


0 root System Administrator


501 toto toto


iMac-de-MARTIAL-2:~ toto$ dscl . -list /Users home | grep -v '.[\^\_\].'


daemon /var/root


nobody /var/empty


root /var/root /private/var/root


toto /Users/toto


iMac-de-MARTIAL-2:~ toto$ sudo du -sh /Users/*


9,5M /Users/Guest


212K /Users/Shared


858G /Users/martialguillouet


373M /Users/toto


iMac-de-MARTIAL-2:~ toto$
 
Poste plutôt dans un Bloc de code pour la lisibilité > ainsi : poste le retour en copier-coller > en veillant à faire le coller dans un Bloc de code (c'est plus lisible !) par le procédé suivant -->

- en bas de cette page des forums MacGé => utilise le menu (le 16è depuis la gauche = vers le milieu de la barre) dans la barre de menus au-dessus du champ de saisie d'un message > sous-menu : </> (= Bloc de code) => tu fais ton coller dans la fenêtre de code et Continuer.​

------------

Bon : l'état des lieux est aussi clair qu'une source de montagne -->

- un fichier identitaire : martialguillouet.plist existe dans la base de données users du Service d'Annuaire
- un dossier domiciliaire : martialguillouet existe aussi dans le répertoire des Utilisateurs. 858 Gi = 921 Go de données.​
- aucun utilisateur : Martial Guillouet n'est reconnu comme existant par le Système > et aucun chemin d'ouverture de session : /Users/martialguillouet n'est pris en charge non plus​

Interprétation : le fichier identitaire : martialguillouet.plist a été corrompu dans ses écritures et se trouve illisible => ce qui supprime d'existence l'utilisateur Martial Guillouet. Si l'OS est High Sierra => je dirai que les défauts de programmation criants du Sercice d'Annuaire de cet OS spécifiquement => sont les responsables directs de cette corruption du fichier identitaire. J'ai été amené à traiter plusieurs dizaines de fois ce cas de figure scandaleux (erreurs de programmation jamais corrigées d'une MÀJ à l'autre) pour l'unique OS High Sierra qui est le cauchemar du dépanneur.

----------

La situation actuelle permet une restauration gagnante sans aucune difficulté.

- passe d'abord la commande (copier-coller) :​
Bloc de code:
sudo rm -f /private/var/db/dslocal/nodes/Default/users/martialguillouet.plist ; sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'
  • la commande supprime le fichier identitaire corrompu : martialguillouet.plist de la base de données users du Service d'Annuaire (commande muette) > puis re-liste les fichiers identitaires d'utilisateurs à nom plein

Poste le retour.

Note : la suppression du fichier identitaire corrompu => ne compromet en rien le dossier domiciliaire : martialguillouet qui réside à une localisation (répertoire des Utilisateurs) entièrement disjointe.
 
Bloc de code:
iMac-de-MARTIAL-2:~ toto$ sudo rm -f /private/var/db/dslocal/nodes/Default/users/martialguillouet.plist ; sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'
Password:
daemon.plist
nobody.plist
root.plist
toto.plist
iMac-de-MARTIAL-2:~ toto$
 
Pour être franc avec toi, sachant que le problème vient surement du stockage, la majorité des fichiers sont sous Dropbox. Le problème étant qu'en plus de stocker les fichiers dans le cloud, Dropbox fait une copie (peut être même 2) sur l'ordinateur. L'idéal serait alors de re-paramétrer Dropbox pour que les fichiers soient uniquement sur le cloud afin de libérer de l'espace.
 
Pour le postage : c'est presque ça > mais il te faut utiliser le 16è menu depuis la gauche et pas le :hilarious:

----------

Fichier corrompu supprimé de la base de données. On recrée à présent une identité d'utilisateur Martial Guillouet valide.


Va à : Menu  > Préférences Système > Utilisateurs & groupes > tu déverrouilles le cadenas > bouton + pour créer un nouvel utilisateur > et tu recrées ainsi cette identité -->

  • Nouveau compte = Administrateur > Nom complet = Martial Guillouet > Nom du compte = martialguillouet (il faut absolument que ce soit cet intitulé ici tout en minuscule et attaché) > 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 (martialguillouet) 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 martialguillouet.plist va être recréé at: /private/var/db/dslocal/nodes/ Default/users/martialguillouet.plist > avec des écritures valides > dont à la clé home cette adresse : /Users/martialguillouet => qui va permettre de réouvrir le session sur le dossier de compte plein de données.

Cela fait > vois-tu affiché l'utilisateur : Martial Guillouet, Admin dans la colonne de gauche des Utilisateurs & groupes ?

----------

Note : j'ai pu constater en effet dans un certain nombre de cas similaires (mais pas tous) que j'ai eu à traiter - cas relevant tous de High Sierra) => qu'un rétrécissement de l'espace libre dans le volume de démarrage à quelques Go seulement => précipitait la corruption du fichier identitaire --> toujours exclusivement de l'utilisateur admin originel (UID = 501). Il est urgent de ménager de l'espace libre dans le volume pour éviter une récidive.
 
  • J’aime
Réactions: izel mor