10.13 High Sierra Mon compte utilisateur a disparu !!

TwentySevenConspiracy

Membre confirmé
2 Mai 2018
35
1
46
Bonjour à tous
Gros soucis ce matin, après avoir laissé en veille toute la nuit mon iMac, au moment de taper mon mot de passe il ne le reconnaît pas...
Une fois, deux fois, dix fois... Je force un redémarrage, et là surprise mon compte utilisateur a disparu ! Reste plus que le compte « utilisateur invité »
Cela m’était déjà arrivé (voir cet échange) et un des modérateurs ici m’avait sauvé. Quelqu’un peut-il m’aider s’il vous plaît ?!
 
Dernière édition par un modérateur:
Un modérateur a ajouté un lien vers les derniers échanges de la fois précédentes pour un problème similaire et je l’en remercie, mais je ne peux rien en faire hélas...

au démarrage je n’ai qu´une fenêtre « utilisateur invité » qui s’affiche. Impossible de faire quoi que ce soit d’autre.

Quelqu’un aurait un petit coup de pouce à me donner ? ☹️
D’avance merci
 
Alors dans cet OS précis > le Service d'Annuaire (nom technique : Open Directory) qui gère les utilisateurs et les groupes => souffre de graves erreurs de programmation. Un des effets induits est la corruption du fichier identitaire de l'utilisateur admin principal > fichier identitaire qui fait exister l'utilisateur pour le Système. La corruption de ce fichier ... supprime l'existence de l'utilisateur (mais pas le dossier de compte dans les Utilisateurs qui contient les données et préférences).

- à tous les coups --> c'est ce qui t'est arrivé. Il faut créer un utilisateur admin auxiliaire > puis à partir de sa session recréer ton fichier identitaire et hop ! => tu pourras réouvrir ta session intacte.​

D'accord pour l'idée générale ?
 
Alors voici comment tu vas pouvoir fournir ici les informations de base (un préalable à la création du compte admin auxiliaire) -->

- démarre les 2 touches ⌘R (cmd R) tenues pressées jusqu'à l'affichage d'une  = 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.​

Dans la fenêtre ouverte > saisis la commande informative (ce qui est inscrit sous Bloc de code) :
Bloc de code:
diskutil list
et ↩︎ (presse la touche "Entrée" du clavier pour exécuter la commande)

  • tu vas voir s'afficher le tableau des disques attachés au Mac (en interne / externe) > avec leurs configurations
  • une série de micro-disques correspond à des images-disques créées en RAM à l'occasion du démarrage en mode Recovery > dont les volumes sont montés en lecture & écriture à l'espace de dossiers de l'OS de secours qui leur servent de points de montage. Ce qui permet pendant le fonctionnement de cet OS monté en lecture seule > à des écritures de s'effectuer à l'espace des dossiers où se trouvent montés les volumes des images-disques de la RAM. Ces images-disques s'effacent à l'extinction ou au re-démarrage.

Voici comment tu vas pouvoir poster ici ce tableau sans avoir besoin de prendre de photo -->

  • tu sélectionnes le tableau > ⌘C pour le copier dans le presse-papier > ⌘Q pour quitter le «Terminal» > option  : "Obtenir de l'aide en ligne" (dans la fenêtre des 4 Utilitaires) > ce qui lance un navigateur «Safari»
  • page Apple par défaut > un clic sur l'adresse de haut de page pour l'éditer > saisis  : macgénération (tout court  : c'est une barre de recherche Google) et valide > tu atteins le site MacGé > Forums > te connectes > ce fil
  • en bas de cette page des forums MacGé => utilise le menu ...▾ (à droite de la bobine souriante) 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.

=> ces informations montreront la configuration logique de ton disque.

Note 1 : si tu ne peux pas poster via le Safari de la session de secours (ça arrive) --> poste une photo du tableau (à partir du commencement = le disque /dev/disk0 ou disque physique interne) - tu as un bouton : "Joindre un fichier" en bas de cette page.

Note 2 : dans la session de secours > les applications se lancent en mode "alternatif" et pas parallèle. Il faut quitter le Terminal pour lancer Safari. Vice-versa > quitter Safari pour récupérer l'écran général de la session de secours et pouvoir relancer le Terminal. Aucun redémarrage n'est requis.
 
Bloc de code:
-bash-3.2# diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Macintosh HD            999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (internal):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                         28.0 GB    disk1
   1:                        EFI EFI                     314.6 MB   disk1s1
   2:          Apple_CoreStorage Macintosh HD            27.6 GB    disk1s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk1s3

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        +2.1 GB     disk2
   1:                  Apple_HFS OS X Base System        2.0 GB     disk2s1

/dev/disk3 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS HAL 9000               +1.0 TB     disk3
                                 Logical Volume on disk1s2, disk0s2
                                 614E5F2F-B8C8-4DF3-95BC-36C80341E631
                                 Unencrypted Fusion Drive

/dev/disk4 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +5.2 MB     disk4

/dev/disk5 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk5

/dev/disk6 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk6

/dev/disk7 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk7

/dev/disk8 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk8

/dev/disk9 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk9

/dev/disk10 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk10

/dev/disk11 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +12.6 MB    disk11

/dev/disk12 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk12

/dev/disk13 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +1.0 MB     disk13

/dev/disk14 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk14

/dev/disk15 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk15

/dev/disk16 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk16

/dev/disk17 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +1.0 MB     disk17

/dev/disk18 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +6.3 MB     disk18

/dev/disk19 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +6.3 MB     disk19

/dev/disk20 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk20

/dev/disk21 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk21

-bash-3.2#

je comprends le problème en te postant le résultat :
le disque dur est complétement full

un fausse manip de ma part surement hier avant que ca plante, je faisais des back up de bibliotheque Final Cut Pro et j'ai du en dupliquer une plutot que la supprimer :/
 
Dernière édition par un modérateur:
Le nom du volume de démarrage est HAL 9000. Non chiffré.

- passe la commande -->​
Bloc de code:
rm /Volumes/"HAL 9000"/var/db/.AppleSetupDone
(un espace entre rm et /Volumes--- ; mets "HAL 9000" avec les "" ; pas d'espace entre 9000" et la / qui suit ; pas d'espace entre db/ et .AppleSetupDone)
  • cette commande supprime un fichier de finalisation vide dans le volume HAL 9000 --> 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 HAL 9000 > redémarre dessus) --> à la fin du chargement de l'OS > au lieu d'ouvrir ta session > tu vas toucher la série des panneaux de paramétrage du Mac. Renseigne tout avec exactitude.
  • le dernier panneau te permet de récupérer des données. Coche l'option : "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 --> tu n'auras qu'à dire si ça a marché.
 
Tu as repris pied dans le volume démarré.

- va à la barre de menus du Finder : Finder > Préférences > Général => coche les cases d'affichage de : "Disques durs" & "Disques externes". En conséquence : tous les volumes se trouvent affichés sur le Bureau.​

À présent va au Terminal et lance-le (Applications > Utilitaires). 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/*

  • à l'exécution de la 1ère > une demande de password s'affiche (commande sudo) => tu t'authentifies en aveugle avec le mot-de-passe toto et tu revalides. Pas besoin pour le 2è sudo (dans les 5').
  • la 1ère liste les fichiers identitaires d'utilisateurs à noms pleins
  • la 2è affiche 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. Elle est très lente d'exécution : attends le réaffichage de l'invite de commande du terminal en signal de fin.

=> poste tous les affichages retournés dans une fenêtre de code. J'aurai ainsi une vision complète de la situation des comptes d'utilisateurs.
 
Bloc de code:
Last login: Tue Jan 14 19:24:32 on console
iMac-de-LoLL:~ toto$ sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'
Password:
Guest.plist
daemon.plist
loll.plist
nobody.plist
root.plist
toto.plist
iMac-de-LoLL:~ toto$ diskutil listUsers / | grep -v '.*[\^\_\].*'
USERS
-----

Disk: disk2
Volume: HAL 9000
Mountpoint: /

UID       Short Name                      Long Name
------------------------------------------------------------------------
1         daemon                          System Services
201       Guest                           Utilisateur invité
0         (null)                          (null)
-2        nobody                          Unprivileged User
0         root                            System Administrator
501       toto                            toto
iMac-de-LoLL:~ toto$
iMac-de-LoLL:~ toto$ dscl . -list /Users home | grep -v '.*[\^\_\].*'
daemon                  /var/root
Guest                   /Users/Guest
nobody                  /var/empty
root                    /var/root
toto                    /Users/toto
iMac-de-LoLL:~ toto$ sudo du -sh /Users/*
4,0K    /Users/Guest
 22M    /Users/Shared
909G    /Users/loll
 28M    /Users/toto
iMac-de-LoLL:~ toto$
 
Alors voici la situation -->

- un compte d'utilisateur est l'association d'un fichier identitaire (qui fait exister l'utilisateur et stocke ses paramètres) & d'un dossier domiciliaire (qui héberge les données et préférences d'utilisateur et sert d'espace d'ouverture de session). Les 2 existent pour le compte loll -->​
Bloc de code:
loll.plist
909G    /Users/loll

  • (la mesure des 909G est en Gi = 976 Go). Mais en ce qui concerne les 2 tableaux médians listant les noms de l'utilisateur et son chemin d'ouverture de session => tu t'aperçois que l'utilisateur loll n'est pas reconnu et qu'il n'a donc pas de chemin d'ouverture de session. C'est la preuve d'une corruption du fichier identitaire loll.plist => par le grâcieux effet des erreurs de programmation du Service d'Annuaire dans High Sierra.

Passe la commande :
Bloc de code:
sudo rm /private/var/db/dslocal/nodes/Default/users/loll.plist

  • qui supprime le fichier loll.plist (sans toucher au dossier loll contenant les données). Commande silencieuse.

Repasse alors la commande :
Bloc de code:
sudo ls /private/var/db/dslocal/nodes/Default/users | sed '/^_/ d'

  • et reposte la liste des fichiers identitaires d'utilisateurs à noms pleins => histoire de voir si loll.plist a bien disparu.
 
Parfait. Après la suppression > la recréation de ton identité -->

- va à : Menu  > Préférences Système > Utilisateurs & groupes > tu déverrouilles le cadenas (mot-de-passe toto) > bouton + pour créer un nouvel utilisateur > et tu recrées ainsi ton identité -->​

  • Nouveau compte = Administrateur > Nom complet = loll > Nom du compte = loll (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 (loll) 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 loll.plist va être recréé at: /private/var/db/dslocal/nodes/Default/ users/loll.plist > avec des écritures valides > dont à la clé home cette adresse : /Users/loll => qui va te permettre de réouvrir ta session sur ton dossier de compte plein de données.

Cela fait > vois-tu affiché l'utilisateur (nom complet) : loll, Admin dans la colonne de gauche des Utilisateurs & groupes ?

Note : tu avais peut-être utilisé un autre Nom complet que loll => dans ce cas tu le remets. Mais il faut absolument que le Nom du compte (nomcourt) soit loll.
 
suivi a la lettre tes consignes (à part le "=> presse le bouton bleu : "Utiliser le dossier existant" puisque le bleu c'était "annuler" ;))
ce qui a pour effet de voir dans la colonne de gauche des "Utilisateurs & groupes" de nouveau mon compte en admin

du coup je tente un redémarrage ? ( perle de sueur au coin du front )
 
Ca refonctionne !
Je retrouve tout comme avant....
Putain, MERCI !

(juste mon dur externe qui n'apparait plus sur le bureau, se trouve via Spotlight et que sur lequel je ne peux plus interagir... mais c'est un moindre soucis ^^)

encore un immense merci !
 
Dernière édition par un modérateur: