10.11 El Capitan Choix d'utilisateur au lancement (FireVault) : Utilisateur Invité indésirable là !

Oui voilà. Tu désactives Filevault, reboot.
Tu actives l'invité. Reboot.
Tu désactives l'invité : reboot.
Tu réactives le Firevault.
J'ai fais une restauration système hier et aujourd'hui j'ai voulu re-virer ce compte et bien la mauvaise nouvelle c'est que ça ne fonctionne plus avec cette méthode (v.10.11.2).

C'est forcément FileVault qui fout la merde parce que s'il est désactivé y a aucun problème. C'est en relançant le chiffrement et juste après le premier redémarrage que cette session invité réapparaît...

Si quelqu'un a d'autres pistes, je suis preneur !
 
Mes contributions précédentes dans ce fil avaient eu (disons) un caractère tout « théorique » sans portée « pratique ». Il est vrai (n'en déplaise aux participants de ce fil avides de toucher les « fruits » de leur « action »
361608_original.png
) que : présence ou absence d'une icône d'Utilisateur Invité à l'écran de login préliminaire du démarrage, à me supposer dans le cas de figure d'une activation de principe de «FileVault» - je m'en « tamponne le coquillard », en toute franchise, en tant que souci d'ordre « pratique » (disgrâce visuelle à l'écran de login et addition d'un geste supplémentaire de sélection de l'utilisateur dont il faut renseigner le mot-de-passe).

Mais ce n'est pas parce qu'un problème m'indiffère dans sa portée « pratique » qu'il ne m'interpelle pas au plan « théorique ». Parce qu'il est question de chiffrement par «FileVault» ici, et qui dit «FileVault», dit génération d'un format CoreStorage sur la partition de l'OS. Or le CoreStorage est un objet si singulier que tout ce qui le concerne pique mon intérêt (conformément à cet aggiornamento de la maxime humaniste : « je suis formaliste, et rien de ce qui touche au format CoreStorage ne m'est étranger »...).

J'ai donc été amené à m'intéresser ce matin à cette question de l'« Utilisateur Invité » uniquement en tant qu'indice, ou symptôme, d'une problématique sous-jacente plus générale.

--------------------​

Que se passe-t-il quand on démarre un Mac dont le volume-Système n'est pas chiffré par «FileVault» ? L'EFI lit en NVRAM le PATH à la partition de boot, exécute le boot_loader at: /System/Library/CoreServices/boot.efi et ce dernier charge le prelinkedkernel at: /System/Library/PrelinkedKernels/prelinkedkernel. Le kernel démarré, les kexts chargées, lance le processus launchd dont, après chargement du Système d'OS X, un service domestique (opendirectoryd) visite la localisation: /private/var/db/dslocal/nodes/Default/users de manière à charger les fichiers .plist des utilisateurs et par là permettre au processus LoginWindow d'afficher à l'écran d'ouverture de session les icônes ad-hoc d'utilisateurs.

Un fichier Guest.plist fait partie du lot des plist et il est possible de faire l'expérience amusante suivante : le fichier ouvert par «TextWrangler» et en parallèle le panneau des Préférences Système/Utilisateurs et groupes (cadenas déverrouillé), sélectionner l'Utilisateur invité et cocher en regard la case : "Autoriser les invités à se connecter à cet ordinateur" affecte immédiatement en écriture en mode "live" le fichier Guest.plist au niveau de la clé : <key>passwd</key>, en ce qui concerne la chaîne associée qui devient : <string>********</string> ; alors que décocher le même case dans le panneau des Utilisateurs et groupes édite en mode "live" la chaîne à : <string>*</string>.

L'opendirectoryd charge donc l'identité de l'Utilisateur Invité avec la valeur "Activé" vs "Désactivé" selon que la chaîne du mot-de-passe est "pleine" ou "vide", et le LoginWindow relaie cette donne en "Affichant" vs "Masquant" l'icône d'Utilisateur Invité à l'ouverture de session.

--------------------​

Que se passe-t-il à présent lorsque l'activation de «FileVault» a chiffré le volume de l'OS ? Un format CoreStorage a été intercalé entre la partition support du disque et le système de fichiers jhfs+ de l'OS. Format impliquant la (ré)génération d'un Volume Logique à partir d'un Volume Physique émulant un disque dur à la seule condition que la Famille de Volumes Logiques médiatrice réceptionne un mot-de-passe habilité à opérer le déverrouillage du Volume Logique et par là son montage par activation du traducteur des blocks chiffrés en blocks déchiffrés induisant le chargement du système de fichiers d'OS X.

La conséquence en est qu'au moment du boot le système de fichiers de l'OS, inclus dans le Volume Logique verrouillé, est totalement inaccessible. Donc le fichier boot_loader : boot.efi autant que le prelinkedkernel. Et bien évidemment le fichier Guest.plist at: /private/var/db/dslocal/nodes/Default/users. Et aucun service opendirectoryd n'est lançable non plus pour l'afficher. J'en ai d'ailleurs opéré la contre-vérification : «FileVault» activé, si je manipule depuis ma session ouverte, dans le panneau des Utilisateurs et groupes, la case : "Autoriser les invités à se connecter à cet ordinateur" en regard de l'Utilisateur Invité => aucun modification en écriture du fichier Guest.plist ne s'opère plus comme en cas de volume non-chiffré (comme il était logique de l'attendre).

--------------------​

Allora qué pasa ?

Pour rendre accessible le Volume Logique verrouillé de l'OS, il faut qu'un écran de login puisse être affiché au début du boot, et non à la fin (après chargement du Système) en cas de non-chiffrement - ce afin que le renseignement d'un mot-de-passe permettre de déverrouiller le volume.

Il faut donc qu'un démarrage puisse s'enclencher en l'absence de toute ressource logicielle disponible du volume de l'OS verrouillé. J'avais fait état dans mes messages antérieurs de ce fil de la solution trouvée à ce paradoxe par les ingénieurs de la  : faire en sorte que l'EFI lise en NVRAM un PATH de boot au volume connexe de la «Recovery HD», non-verrouillé et donc montable automatiquement, afin d'exécuter son boot_loader boot.efi de rechange en initialisation du boot sur le disque.

Je m'étais précédemment arrêté à cette trouvaille, sans creuser le processus plus finement. Car la question se pose : le boot_loader boot.efi de la «Recovery HD», intrinsèquement, ne doit pas être modifié dans son code, s'il doit pouvoir servir aussi bien au boot de la partition de récupération qu'à l'enclenchement du démarrage d'OS X par affichage d'un écran de déverrouillage. Et cet écran : d'où il le sort alors, le boot.efi (pas d'une poche kangourou) ?

Eh bien ! je viens de m'apercevoir ce matin que, lorsqu'on active «FileVault» et après que le Mac ait re-démarré en préambule de cette tâche, un nouveau dossier se trouve créé sur la partition de la «Recovery HD». Le dossier de démarrage de la «Recovery HD» (contenant le boot_loader boot.efi) est le com.apple.recovery.boot. Dossier que je présume intouché. Mais un autre dossier se trouve alors créé à côté après l'activation de «FileVault» : le dossier com.apple.boot.P (contre-test : la désactivation de «FileVault» conduit à la suppression au re-démarrage inaugural de ce dossier com.apple.boot.P de la partition de la «Recovery HD»).

De quoi se compose ce dossier : com.apple.boot.P ? De l'arborescence suivante : com.apple.boot.P/System/Library/Caches/com.apple.corestorage/EFILoginLocalizations - dernier dossier recelant 12 fichiers porteurs de l'extension .efires => appleLogo.efires, battery.efires, disk_passwordUI.efires, flag_picker.efires, guest_userUI.efires, loginui.efires, Lucida13.efires, Lucida13White.efires, preferences.efires, sound.efires, unknown_userUI.efires.

Les fichiers de format .efires désignent des fichiers "ressources de l'EFI" (EFI_res) dont on pourrait considérer, qu'après les flags chargés à partir de la NVRAM, ils constituent des instructions de boot mises en cache sur la partition de la «Recovery HD» que l'EFI charge avant même d'exécuter le boot_loader : boot.efi de la récupération. Ayant chargé ces instructions a priori d'après les .efires_files, l'EFI les injecte à l'exécution au boot_loader : boot.efi de la «Recovery HD». Ce dernier "sait" donc à partir de là quels sont les loginui (les Users_Identities de login), les disk_passwordUI (les Users_passwords de déverrouillage de disque), les preferences (préférences de boot) etc. et, en particulier, le guest_userUI (l'User_Identity de l'Invité). Sans compter les ressources du fond d'écran - j'en passe et des meilleures...

--------------------​

"Dopé" intellectuellement par cette trouvaille mineure (en terme d'« onto_logie générative »), je me suis demandé : oui, mais comment se trouve créé ce dossier d'instructions spécifiques de démarrage passées par l'EFI au boot_loader auxiliaire boot.efi de la «Recovery HD» en cas de chiffrement du volume de l'OS ? Je n'ai pas été long à suivre le fil : il existe dans OS X un dossier paradigme (modèle ou archè) at: /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations => comportant les mêmes exacts 12 fichiers .efires que l'on retrouve dans le dossier de boot auxiliaire com.apple.boot.P de la «Recovery HD».

Voici comment je reconstruis la séquence : à l'activation de «FileVault», les fichiers .efires de l'OS at: /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations se trouvent édités (notamment en ce qui concerne les utilisateurs habilités à déverrouiller le volume chiffré par leur mot-de-passe + l'activation ou non de l'Utilisateur Invité - ce, en lieu et place de l'édition des fichiers plist at: /private/var/db/dslocal/nodes/Default/users qui sont édités en cas de non-chiffrement pour toute manipulation du panneau des Utilisateurs et groupes. Ces fichiers .efires édités dans le dossier Caches d'OS X servent de paradigme à une opération de recopie avant re-démarrage sur la partition de la «Recovery HD» dont le volume se trouve monté, de manière à générer le dossier d'instructions de boot auxiliaires de l'EFI : com.apple.boot.P à passer spécifiquement au boot_loader boot.efi de la récupération afin qu'il affiche un écran de déverrouillage ad-hoc du volume chiffré.

--------------------​

Eh bien ! Je subodore que sur certains Macs et dans certaines configurations de l'OS, le travail initial d'édition des fichiers .efires at: /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations initié par les manipulations graphiques de l'utilisateur dans les panneaux Sécurité et confidentialité/FileVault + Utilisateurs et groupes/Utilisateur Invité reste inopérant sur le fichier paradigme : guest_userUI.efires => en suite de quoi, sa copie inéditée est effectuée dans le dossier d'instructions auxiliaires com.apple.boot.P de la «Recovery HD». Je dis : sur certains Macs etc., car ayant chiffré expérimentalement ce matin le volume de mon OS «El Capitan - 10.11.3 (2è version bêta)», je n'ai rencontré aucune difficulté, en cochant / décochant la case des Utilisateurs et groupes/Utilisateur Invité => "Autoriser les invités à se connecter à cet ordinateur" à obtenir par effet direct l'affichage ou le masquage au re-démarrage d'un Utilisateur Invité à l'écran de déverrouillage.

Donc dans mon OS, le fichier guest_userUI.efires a bien été directement édité dans les Caches du Système, et par suite, recopié avant re-démarrage tel quel dans le dossier Caches de démarrage du com.apple.boot.P de la «Recovery HD». Mais si la lecture ou la manipulation d'un fichier .plist ne me pose aucun problème logique ; il n'en va pas de même d'un fichier au format .efires qui est en code. Car je ne suis absolument pas informaticien et donc le langage de code m'est absolument étranger. Je ne peux donc pas en dire plus sur ce qu'il conviendrait éventuellement d'éditer dans le code de ce fichier pour que l'Utilisateur Invité soit non-affiché à l'écran de déverrouillage en cas de chiffrement «FileVault».

[La raison qui fait que l'édition du fichier guest_userUI.efires plante ou non à la manipulation de la case : Utilisateurs et groupes/Utilisateur Invité => "Autoriser les invités à se connecter à cet ordinateur" en cas d'activation de «FileVault» m'échappe tout autant...]

--------------------​
 
Dernière édition par un modérateur:
Salut macomaniac. Waouh merci pour ces très longues explications, malheureusement je ne comprends pas grand chose...

Moi je demande simplement à ce qu'on puisse me trouver une solution à mon problème ;-) Une solution pas à pas qui fonctionne. Je tiens à préciser que lorsque j'ai restauré j'ai activé le chiffrement FileVault. Et moi perso c'est pas le côté d'avoir à appuyer sur une touche en plus qui m'embête mais le côté estéthique. C'est vraiment affreux cette session invité qui est dépourvue d'avatar. D'autant plus que je n'en ai strictement aucune utilité.
 
Voilà ce que j'ai effectué, précisément et dans l'ordre :

1/ Réinstallation propre de El Capitan (v 10.11.2) avec activation de FileVault.

2/ La session invité c'est évidemment affichée au démarrage étant donné qu'elle est activée par défaut.

3/ Désactivation de la session invité puis reboot. Elle apparaît malgré tout au redémarrage.

4/ Désactivation de FileVault puis reboot. La session invité n'apparaît plus.

5/ Activation de la session invité puis reboot. La session invité réapparaît alors en toute logique.

6/ Désactivation de la session invité puis reboot. La session invité n'apparaît plus.

7/ Activation de FileVault. Au reboot, cette satanée session invité est revenue. Même après le chiffrement elle est encore présente à chaque reboot.
 
Prose dominicale où la « théorie » montre qu'elle peut avoir des effets « pratiques »...

Salut albirion.

Moi je demande simplement à ce qu'on puisse me trouver une solution à mon problème ;-)

J'ai bien compris : toi, tu désires un "effet prochain" ; moi, je spécule sur des "causes éloignées" - ce qui fait qu'il y a un "grand écart" ou un situation de "ciseaux" au départ entre nos positions. Mais les "extrêmes" peuvent finir par se rejoindre, ou encore les branches des "ciseaux" se croiser pour trancher en bout de course un problème.


J'étais assez content hier matin d'avoir compris une différence de fonctionnement en ce qui concerne l'Utilisateur Invité :

- a) quand «FileVault» n'est pas activé, l'action graphique de cocher ou décocher la case : "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système résulte en un processus d'écriture au fichier : /private/var/db/dslocal/nodes/Default/users/Guest.plist (constat expérimental) => au démarrage du Mac, le volume de l'OS étant déverrouillé a priori, le Système se charge et arrivé à l'écran de login, le processus LoginWindow a toute lattitude de tenir compte du contenu des préférences de ce fichier Guest.plist grâce au daemon : opendirectoryd qui les a chargées.

- b) quand «FileVault» est activé, l'action graphique de cocher ou décocher la même case "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système n'a strictement aucun effet d'écriture au fichier : /private/var/db/dslocal/nodes/Default/users/Guest.plist (constat expérimental encore), mais (1ère déduction théorique) un effet d'écriture au fichier : /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires ; d'où (2è déduction théorique) doit s'ensuivre une recopie à la fermeture de session de l'utilisateur au fichier :
/Volumes/Recovery\ HD/com.apple.boot.P/System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires du volume monté en préalable de la «Recovery HD» ; d'où (3è déduction théorique) au redémarrage, l'EFI charge (entre autres) le contenu de ce fichier et en passe les instructions au démarreur auxiliaire boot.efi de la «Recovery HD» qui, en fonction du paramètre : "activé" vs "désactivé" recelé dans ce fichier, affiche ou n'affiche pas à l'écran inaugural de déverrouillage le fameux Utilisateur Invité.​


☞ Ça, c'est la « théorie » : c'est-à-dire la description « en pensée » de l'enchaînement logique déterministe qui se produit possiblement dans les faits. Mais toute « théorie » doit être mise à l'épreuve de l'expérience, sous peine de rester une simple spéculation, càd. une « pensée du possible », et non une « pensée de l'effectif ». Or, justement, mise à l'épreuve de l'expérience, cette « théorie » était confrontée à des résultats expérimentaux contradictoires, selon qu'il s'agissait de mon Mac ou de ton Mac - toutes choses constantes par ailleurs question Système («El Capitan» dans les 2 cas) =>

- b1) « théorie » vérifiée expérimentalement sur mon Mac où j'avais activé «FileVault» : l'Utilisateur Invité étant affiché par défaut à l'écran inaugural de déverrouillage, il me suffisait de décocher la case : "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système et, au re-démarrage, l'Utilisateur Invité n'était plus affiché ; vice-versa, recocher cette case induisait son réaffichage à l'écran de déverrouillage après simple re-démarrage.

b2) « théorie » infirmée expérimentalement sur ton Mac où tu as activé «FileVault» : l'Utilisateur Invité étant affiché par défaut à l'écran inaugural de déverrouillage, décocher la case : "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système, au re-démarrage, n'avait aucun effet l'Utilisateur Invité étant toujours affiché (aucune manipulation supplémentaire de désactivation / réactivation de «FileVault» n'y changeant quoi que ce soit).​


Lorsqu'un enchaînement causal reproduit en mode « théorique » débouche expérimentalement sur des résultats contradictoires, comme s'il n'y avait justement pas déterminisme, mais hasard ; alors, il devient possible d'envisager qu'une variable opère dans les 2 cas en contradiction dont la « théorie » n'a pas pris la mesure. C'est sur un constat d'ignorance de ce facteur que j'avais conclu mon "pavé" d'hier. Mais une espèce de "petit manège mental" tournait en arrière-plan de mes pensées (quel facteur peut bien être soit "présent", soit "absent", dans «El Capitan», pour que dans un cas décocher la case : Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système ait un effet d'écriture au fichier : /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires ; d'où doit s'ensuivre une recopie à la fermeture de session de l'utilisateur au fichier :
/Volumes/Recovery\ HD/com.apple.boot.P/System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires du volume monté en préalable de la «Recovery HD» ; et donc une passation par l'EFI du paramètre "Utilisateur Invité désactivé" au boot_loader boot.efi de la «Recovery HD» en charge d'afficher l'écran de déverrouillage initial ; et que dans l'autre cas, rien ne se passe ?)...

Une « réponse », toujours tout aussi « théorique » (càd. « possible »), m'a été apportée en rêve cette nuit même, et je me suis empressé de la tester expérimentalement. Non seulement, je suis devenu capable de reproduire ton cas de figure (Affichage de l'Utilisateur Invité quoi qu'on fasse), mais également de répéter mon cas de figure initial (Affichage vs masquage de l'Utilisateur Invité en résultat direct de l'action de cocher / décocher la case : "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système).

[Est-ce que tu « comprends » ce que j'essaye de te dire ? Les manipulations pratiques sans « théorie » sont aveugles ; il n'y a que la « théorie » - si écartée de la pratique qu'elle paraisse au premier abord - qui permette de créer des expérimentations orientées...]


Quelle est donc cette « réponse théorique » ? - Tout bêtement la suivante : «El Capitan» se singularise par la mise en place du SIP au démarrage du Système : il s'agit de flags dans la mémoire NVRAM que l'EFI prend en charge et passe au kernel via le boot_loader boot.efi et qui débouchent (entre autre) sur un verrouillage par un attribut d'immutabilité (l'extended_attribute_rootless) de répertoires entiers de l'OS une fois chargé. Dont le répertoire /System - duquel à son tour fait partie le fichier critique : /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires pour ce qui est de l'affichage ou masquage de l'Utilisateur Invité à l'écran de déverrouillage quand on active «FileVault».

Eh bien ! le SIP actif, décocher la case "Autoriser les invités à se connecter à cet ordinateur" dans le panneau Utilisateurs et groupes des Préférences Système doit échouer à lancer un travail d'écriture au fichier guest_userUI.efires de destination, puisqu'il doit être verrouillé par un attribut d'immutabilité rootless. => il doit donc falloir désactiver le SIP pour rendre opératoires des variations d'écriture à ce fichier. Ce point permet de toucher du doigt ce que c'est qu'un bogue : une contradiction logique opérante dans un Système qui devrait être consistant pour fonctionner de manière satisfaisante : les ingénieurs en charge de ce plan d'OS X ont omis d'exclure du SIP le fichier guest_userUI.efires afin qu'il continue d'être éditable en écriture en droits root lorsque le SIP est actif.


Je te propose donc, albirion, de réitérer mes expérimentations victorieuses de ce matin (je présuppose que «FileVault» est activé pour ton «El Capitan» comme il l'était pour le mien) :

- Démarre par ⌘R sur la partition de récupération «Recovery HD 10.11» d'«El Capitan» et va à la barre de menus supérieure de l'écran, menu : Utilitaires pour lancer le «Terminal». Saisis dans la fenêtre qui s'affiche la commande :

Bloc de code:
csrutil disable
et ↩︎ (presse la touche "Entrée" du clavier pour activer la commande) => re-démarre ton Mac pour que cette désactivation du SIP devienne opérante. À l'écran de déverrouillage, l'Utilisateur Invité est toujours affiché.

- 2° Ta session réouverte, va à : Préférences Système/Utilisateurs et groupes et déverrouille le cadenas => suppose que la case pour l'Utilisateur Invité : "Autoriser les invités à se connecter à cet ordinateur" soit décochée => eh bien ! par effet de constance d'état, la désactivation du SIP ne va pas produire d'effet d'écriture dans le fichier critique /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires. Coche au contraire la case : "Autoriser les invités à se connecter à cet ordinateur" afin d'induire un effet d'écriture au fichier guest_userUI.efires, ce qui est rendu possible par la désactivation du SIP => re-démarre : l'Utilisateur Invité est toujours affiché à l'écran de déverrouillage.

- 3° Ta session réouverte, va une fois de plus à : Préférences Système/Utilisateurs et groupes et déverrouille le cadenas => décoche la case pour l'Utilisateur Invité : "Autoriser les invités à se connecter à cet ordinateur" (si la case était à ton premier re-démarrage après désactivation du SIP déjà cochée, alors néglige la phase et passe à cette phase d'entrée) => par effet de variation d'action, et grâce à la désactivation du SIP, il va se produire un effet d'écriture dans le fichier critique /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires (et par là, une recopie du fichier édité at: /Volumes/Recovery\ HD/com.apple.boot.P/System/Library/Caches/com.apple.corestorage/EFILoginLocalizations/guest_userUI.efires) => re-démarre ton Mac : l'Utilisateur Invité est désormais masqué à l'écran de déverrouillage [ce qu'il fallait vérifier pratiquement après l'avoir conjecturé théoriquement].

- 4° (Facultatif) Re-démarre par ⌘R sur la partition de récupération «Recovery HD 10.11» d'«El Capitan» et va à la barre de menus supérieure de l'écran, menu : Utilitaires pour lancer le «Terminal». Saisis dans la fenêtre qui s'affiche la commande :

Bloc de code:
csrutil enable
et ↩︎ (presse la touche "Entrée" du clavier pour activer la commande) => re-démarre ton Mac pour que cette réactivation du SIP devienne opérante. À l'écran de déverrouillage, l'Utilisateur Invité est toujours masqué et le fichier critque guest_userUI.efires se trouve verrouillé par un attribut étendu rootless d'immutabilité dans l'OS.​

367024_original.gif
 
Dernière édition par un modérateur:
  • J’aime
Réactions: fuch
Salut macomaniac, bon. Je vais faire court, j'ai pas ton talent et surtout tes connaissances pour faire aussi long que toi, je te dis un GRAND MERCI ça fonctionne nickel ;) J'ai à peu près compris la partie théorique du coup :D
 
je te dis un GRAND MERCI ça fonctionne nickel ;) J'ai à peu près compris la partie théorique du coup :D

Hé ! Hé ! compliment réversible :merci: : c'est ton insistance « pratique » qui m'a forcé à trouver une « théorie » qui marche... Sinon : cet affichage résilient de l'Utilisateur Invité à l'écran de déverrouillage quand «FileVault» est activé, je n'y aurais vu qu'un détail négligeable et je me serais contenté d'une « déclaration d'ignorance » (cf. mon message #22).

Je savais déjà que, quand «FileVault» est activé, le volume de l'OS étant verrouillé au démarrage, le Mac ne peut booter qu'en mode indirect : l'EFI exécutant le boot_loader auxiliaire boot.efi de la partition de récupération «Recovery HD». Mais je n'allais pas plus loin que ce schéma général, finalement des plus vague.

J'ai « découvert », en étant forcé de scruter les choses plus en détail, qu'un dossier spécial se trouve créé sur la partition «Recovery HD» à l'activation de «FileVault» (et inversement, détruit à la désactivation de «FileVault») : le dossier com.apple.boot.P, tout à fait distinct du dossier de démarrage standard de la «Recovery HD» (= com.apple.recovery.boot), et contenant 12 fichiers portant l'extension .efires qui désignent des "ressources_de_l'EFI".

Dans le cas de figure d'un volume de l'OS verrouillé par «FileVault», l'EFI (= le Programme Interne de la Carte-Mère) prend donc l'aiguillage d'un démarrage sur la partition «Recovery HD», mais avant d'exécuter le fichier démarreur auxilaire boot.efi de cette partition de récupération, visite le dossier com.apple.boot.P pour charger les instructions de boot .efires qu'il recèle (dont les instructions concernant l'Utilisateur Invité recelées dans le fichier guest_userUI.efires). Ce sont ces instructions de boot que l'EFI passe au boot_loader boot.efi, lequel, au lieu de démarrer la «Recovery HD», se trouve grâce à elles converti en un démarreur du volume verrouillé de l'OS en ayant la charge d'afficher d'entrée un écran de déverrouillage.

Bon j'abrège : restait à comprendre d'où provenaient ces fichiers .efires (= d'une recopie à la fermeture de session d'utillsateur du modèle constitué par le lot de fichiers .efires correspondants dans la Bibliothèque-Système de l'OS), et quelle variable cachée pouvait bloquer leur mise-à-jour régulière (notamment sur la question de l'affichage / masquage de l'utilisateur invité) : il s'est avéré que c'était le SIP (la Protection d'Intégrité du Système) activé par défaut sous «El Capitan» et qui produit ici un « effet de bogue »...​

Grâce à cette « théorie » confirmée en « pratique », je pense qu'un autre point de détail devrait pouvoir trouver une solution : celui soulevé dans le fil ☞Changer le lockscreen El Capitan ?☜ => d'où vient le fond d'écran de l'écran de déverrouillage affiché par le boot.efi de la «Recovery HD» lorsque «FileVault» est activé ? Et comment se fait-il qu'il s'agisse tantôt d'un fond d'écran gris par défaut, et tantôt d'un qui correspond à l'original localisé dans l'OS at: /Library/Caches/com.apple.desktop.admin.png ? - Je subodore qu'il doit y avoir un mécanisme de transmission /Library/Caches/com.apple.desktop.admin.png => /System/Library/Caches/com.apple.corestorage/EFILoginLocalizations [ressources .efires] => dossier com.apple.boot.P de la «Recovery HD» [ressources .efires recopiées] - avec à la clé un énième bogue peut-être encore lié au SIP faisant que le fond d'écran affiché tantôt relève du .jpeg uni gris faisant partie des ressources standards du boot.efi de la «Recovery HD», tantôt lui est injecté comme ressource custom par l'EFI à partir d'un .efires.

☞ comme tu peux voir, ce sont toujours les détails qui ne collent pas qui suscitent des questions « théoriques » - jamais les fonctionnements réguliers qui encouragent à garder la « béatitude de l'ignorance »...
361608_original.png
 
Dernière édition par un modérateur:
  • J’aime
Réactions: fuch