Problème de double boot avec eEFIT sur Yosemite

vicarius

Membre enregistré
10 Mars 2011
5
0
Bonjour à tous, j'ai installer MAC OSX Yosemite récemment et mon logiciel de Double Boot
"rEFIT" (pour mac OS/window 7) ne fonctionne plus comme il devrait le faire normalement au démarrage...Je suis donc aller sur différent site pour trouver une solution genre celui-ci

http://linuxfr.org/forums/astucesdi...oot-macbook-debian-testing#3-problème-gptsync

J'ai réinstallé le logiciel mais rien à faire çà ne veut plus démarrer :(

j'ai donné toute les autorisation nécessaire pour que le logiciel ne soit pas bloqué par l'OS
mais rien ne se passe
Dois-je entrer une commande spéciale dans le terminal pour réactiver le logiciel?
Si oui quelle ligne dois-je entrer?

Merci d'avance à tous ceux qui liront ce messages et qui m'aideront à régler mon petit soucis de compatibilité
Bonne journée.
 
Pourquoi ne pas utiliser l'EFI de base plutôt que de changer pour des logiciels qui touchent des trucs très chiants à désinstaller etc..


Tu as accès a un OS ou absolument pas ?
 
Oui j'ai accès accès au deux OS, mais c'est chiant de devoir appuyer sur ALT (option) au début à chaque fois alors que tous fonctionnait sur léopard, snow leopard, lion, mountain lion, et maverick, le logiciel fonctionnait parfaitement avant l'update. (j'ai juste envie de taper les programeurs de chez Apple...).
Avant pendant une minute: j'avais le choix entre les deux OS et maintenant çà boot automatiquement sur OSX.
 
Si j'en crois ton pseudonyme, vicarius, recourir à une 'fonction vicariante' n'a rien qui te dérange, en principe (par quoi j'entends, en cas de déficience d'un logiciel, recourir à un autre capable de rendre le même type de service) :D

Je te conseille de télécharger et d'installer les ressources binaires du logiciel de Roderick Smith ☞rEFInd☜ (clique sur le lien en bleu : normalement le téléchargement devrait s'enclencher aussitôt) --> un dossier intitulé : refind-bin-0.8.2.4 atterrit dans ton dossier des Téléchargements ou sur ton Bureau selon la préférence de destination des objets téléchargés que tu as instruite dans ton navigateur internet.

Je te conseille de sauvegarder ce dossier des binaires de «rEFInd» auquel tu pourras éventuellement être amené à avoir recours derechef (pour la raison suivante, d'après mon expérience : il arrive qu'on doive ré-installer «rEFInd», soit après une désinstallation volontaire du logiciel, soit après une désactivation accidentelle - ce qui implique de pouvoir ré-exécuter le script shell d'installation et donc de l'avoir sous la main commodément, ainsi que les ressources binaires qu'il requiert pour cette installation). Tu peux loger le dossier où tu veux, pourvu qu'il soit évident de le trouver quand tu en as besoin. Personnellement, je l'ai logé à la racine de l'OS (à côté des répertoires-systèmes : Bibliothèque, Système etc.) en m'authentifiant par mon mot-de-passe admin à partir du seul argument de la visibilité maximale d'un tel dossier de ressources de boot : chaque fois que j'ouvre une fenêtre-Finder, la présence du dossier REFIND me saute aux yeux et me sert de 'reminder' (comme disent les Américains qui, pour toutes les occurrences susceptibles de se produire dans l'expérience, ont un mot tout prêt qui l'emballe comme si l'événement se conformait toujours à une désignation verbale a priori disponible à l'avance. Ce qui fait qu'ils parlent toujours en mode déterministe, et jamais en mode ouvert comme le permet l'usage du Français, qui est une langue où la syntaxe prime le vocabulaire).

Une fois que tu as sauvegardé ton dossier, tu vas à : Applications/Utilitaires et tu lances le «Terminal». Dans sa fenêtre ouverte, tu commences par taper simplement :

Bloc de code:
sudo

et tu sautes un espace avec la barre d'espacement du clavier. Cela fait, tu reviens au dossier de «rEFInd» (où que tu l'aies sauvegardé), tu l'ouvres d'un double-clic, et tu avises le fichier : install.sh parmi les ressources --> tu fais carrément un glisser-déposer au pointeur dans la fenêtre du «Terminal», ce qui renseigne automatiquement le chemin au fichier et, en terminaison, le nom du fichier qui vaut pour la désignation de l'objet lui-même. Ce qui te donne au total quelque chose d'analogue à :

Bloc de code:
sudo /chemin_au_fichier/[COLOR="RoyalBlue"]install.sh[/COLOR]

et ↩︎ (presse la touche 'Entrée' du clavier pour activer la commande) --> une demande de password s'affiche (commande sudo = de niveau Super-Administrateur Système) --> tape ton mot-de-passe admin à l'aveugle - aucun caractère ne se montrant à la frappe - et derechef ↩︎ --> en réponse, tu as droit à l'affichage :

Bloc de code:
Installing rEFInd on OS X....
Installing rEFInd to the partition mounted at /Volumes/ESP
Copied rEFInd binary files

Copying sample configuration file as refind.conf; edit this file to configure
rEFInd.


WARNING: If you have an Advanced Format disk, *DO NOT* attempt to check the
bless status with 'bless --info', since this is known to cause disk corruption
on some systems!!


Installation has completed successfully.

Unmounting install dir
umount(/Volumes/ESP): Volume EFI on disk0s1 unmounted

Il te suffit de re-démarrer pour que l'intercepteur de boot : «rEFInd» soit actif, et à chaque démarrage/re-démarrage, tu devrais automatiquement voir s'afficher un écran de choix de boot graphique (permettant de sélectionner le disque de démarrage et l'option éventuelle de ce démarrage).

♤


Comme je suis relativement lancé ce matin dans des considérations oiseuses, autant laisser fuser une nouvelle gerbe :D

L'exécution de l'install.sh de «rEFInd» produit 2 actions connexes : une intervention sur la mémoire statique NVRAM de la Carte-Mère où se trouve désormais instruit, en mode hégémonique, un argument de boot qui dirige automatiquement la trajectoire de l'EFI (Programme Interne ou Firmware du Mac) sur une cible unique, qui est l'intercepteur de boot : «rEFInd».

Cet intercepteur de boot s'installe dans la partition dite ESP (EFI System Partition), par défaut la 1ère des partitions logiques du Tableau de Partition GUID du disque de l'OS (/dev/disk0s1), dont le Volume, non monté par défaut, est intitulé EFI au montage occasionnel.

En mode standard, l'ESP est vide en ressources actuelles et ne sert que comme volume de transit temporaire des MÀJ de l'EFI_Firmware lorsque la mise-à-jour d'une version d'OSX en est clandestinement porteuse, et c'est à partir de cette 'base de cantonnement temporaire' qu'elles sont écrites en programme interne au re-démarrage, avant suppression de leur présence dans l'ESP. Le disque d'un OS peut très bien fonctionner intrinsèquement en cas de suppression de cette partition-EFI, mais il est impossible en l'absence d'un volume ESP qu'aucune MÀJ du Firmware puisse s'exécuter. Ce serait donc une lourde erreur de supprimer cette partition ESP sous prétexte que c'est un ornement inutile.

En mode spécial, l'ESP est chargée des ressources de boot actuelles de «rEFInd». «rEFInd» ne fonctionne comme intercepteur de boot que parce qu'un argument de boot hégémonique en NVRAM conduit l'EFI à monter en volume au démarrage l'ESP où se trouvent les ressources de boot de «rEFInd» et à exécuter le lancement de son programme en lieu et place du montage du volume de l'OS et de l'exécution de son fichier Boot_Loader : boot.efi. Voici une capture de ces ressources sur l'ESP du disque de mon MacBook Pro supportant «Yosemite» :

353783_original.png

Il s'agit donc d'un véritable aiguillage de la trajectoire de l'EFI, qui modifie le Volume cible monté au démarrage, de même que le fichier démarreur exécuté sur ce volume. Sur les Macs où «rEFInd» est installé, quand bien même il n'y aurait qu'un OS démarrable à l'arrivée, c'est «rEFInd» qui accapare absolument l'initiative et auquel l'EFI passe la main. Et c'est «rEFInd», selon le choix graphique de l'utilisateur, qui va exécuter après coup le fichier Boot_Loader de l'OS choisi comme Système à démarrer. Quand il s'agit d'OSX, le Boot_Loader : boot.efi qui va charger le kernel, lequel va charger les kexts.

♧

Comme je suis en veine de d'argumentation rhétorique, je voudrais profiter de cette opportunité (le kairos affectionné des Grecs) pour souligner un point absolument crucial pour tous les utilisateurs qui sont dans le cas de figure : «SSD de Tierce-Partie» x «OS Yosemite» x «Trim Enabler activé». J'aimerais la placer sous le patronage d'un qui a régulièrement l'amabilité de souffrir la 'forme longue' de mes proses alors même que sa préférence personnelle va à la 'forme brève' : j'ai nommé bompi :coucou: qui, dans ce fil hanté par des anxieux de tout acabit :D [TRIM] Yosemite et son bridage déclare (message #166) :

C'est à se demander si le plus simple ne serait pas d'installer rEFInd, après tout. Je n'ai jamais eu le moindre problème, il peut très bien être là sans qu'on le remarque (sauf à démarrer avec Alt enfoncée) et il semble parer au problème.

Mon expérience corrobore entièrement cette appréciation : l'existence de «rEFInd» installé en intercepteur de boot de l'EFI au démarrage annule les risques de plantage liés à l'activation de Trim Enabler, si et seulement si le démarrage est laissé à l'intiative de «rEFInd».

Je pense, d'après mon petit exposé précédent, que la raison de cet effet expérimental ressort : lorsque «rEFInd» est installé, c'est l'argument de boot instauré en NVRAM par «rEFInd» qui possède l'hégémonie sur le kext_signing de «Yosemite» qui se trouve overriden. De même, je le présume, sur l'argument de boot : boot-args-kext-dev-mode=1 instruit par «Trim Enabler» en substitution du kext_signing. Le résultat est que l'EFI ne passe aucun argument de boot en direct au Boot_Loader : boot.efi qui donc ne peut pas le refiler au kernel au chargement ; car l'EFI ne prend en charge que l'instruction hégémonique d'avoir à monter le Volume ESP de la partition /dev/disk0s1 et à exécuter comme fichier-chargeur exclusivement celui de «rEFInd», sans qu'il soit jamais question de pouvoir lui refiler une instruction directrice déterminante, puisque précisément «rEFInd» est une instance de démarrage optionnel.

Le fait que «rEFInd» prenne la main en intercepteur de boot équivaut donc à la résiliation du kext_signing a priori qui se trouve par là neutralisé. À partir du tableau de bord graphique de «rEFInd», choisir même un démarrage sans extensions n'expose plus au plantage, puisque ce processus s'exécute à partir d'une instance de boot exempte du kext_signing (CQFD).

Par contre, comme souligné par bompi, tout démarrage à partir de la touche 'alt' courcircuite «rEFInd» et ré-expose à un boot privé de son égide ; de même, un démarrage direct avec la touche ⇧ pressée (démarrage sans extensions d'entrée) : là, le plantage est assuré en cas de configuration : «SSD de Tierce-Partie» x «OS Yosemite» x «Trim Enabler activé», car le kernelcache va être supprimé et le kernel solitaire, dans sa fonction de charger individuellement les kexts, va récupérer l'argument du kext-signing. Il en irait de même, bien évidemment, pour une commande de reset_NVRAM d'entrée (⌘⌥PR), car il y aurait suppression de l'argument de boot hégémonique de «rEFInd» (aussi bien d'ailleurs que de celui du boot-args-kext-dev-mode=1 de «Trim Enabler»), et prévaudrait alors le kext_signing que l'EFI passerait directement au kernel via le boot.efi.

Avant de prendre congé, je voudrais souligner que, par un effet particulièrement pervers, «Yosemite» s'installe fréquemment en virant le partition d'accueil de l'OS : /dev/disk0s2 au format : Groupes de Volumes Logiques : CoreStorage, soit en mode non chiffré, soit en mode chiffré (si la proposition d'activer «FileVault» est acceptée par l'utilisateur - qui aurait mieux fait d'aller se pendre :D). Or l'existence du format : Groupes de Volumes Logiques : CoreStorage sur la partition de l'OS : /dev/disk0s2 interdit à «rEFInd» de jouer le moindre rôle au démarrage.

C'est une alternative : si je veux que «rEFInd» fonctionne, le format Groupes de Volumes Logiques : CoreStorage ne doit pas exister sur la partition de l'OS ; s'il existe, «rEFInd», même installé sur le volume ESP (/dev/disk0s1), se trouve neutralisé comme intercepteur de boot et donc ne peut plus jouer son rôle d'égide au démarrage.

Il semble bien que, si Roderick Smith s'est aperçu de ce dernier problème, il ne se soit absolument pas avisé du rôle de neutralisation de l'instruction du kext_signing joué par son logiciel (le seul Mac à sa disposition étant de son propre aveu une antiquité cantonnée à «Snow Léopard» :D).

<NB. Il semble que sur des disques d'une taille supérieure à 500 Go - ce qui est aujourd'hui fréquent - il y ait risque de flingage du disque, «rEFInd» installé sur l'ESP, si jamais l'utilisateur, dans le «Terminal», invoquait le binaire : bless avec l'option : --info --> pour une raison qui m'échappe, il semble que cette commande ait des effets dévastateurs et qu'elle doive donc être proscrite.>

&#9825;
 
Dernière édition par un modérateur:
Parfait tous fonctionne (très bon tuto)... un grand merci à macomaniac.

J'ai fait exactement ce qui est écrit en commençant par mettre le dossier "refind" à la racine.

Toutes cette "méga explication" juste pour entrer 3 lignes de commande dans le terminal (en vérité juste 2 lignes de commande)

Mais bizarrement mon bureau prends 10s de plus au démarrage à afficher toutes les icônes sur le bureau. (à moins ce ne soit temporaire (ou c'est juste dans ma tête que sa se passe)).

Mais maintenant j'ai un autre souci
Je ne n'ai que 20s pour choisir ma partition...

Avant, quand j'utilisais le logiciel "rEFIT", il y avait un fichier qui s'apellait:"refit.conf"
il fallait juste que j'ouvre le fichier dans un logiciel comme BBEDIT (sur mac) ou notepad++ (sur PC) pour changer la valeur du "timeout" qui était de 20 par défaut et le remplacer par 60 et sauvegarder le fichier et le tour était joué...
Ça ressemblait à ça (extrait d'une partie)

# refit.conf
# Configuration file for the rEFIt boot menu
#

# Timeout in seconds for the main menu screen. Setting the timeout to 0
# disables automatic booting (i.e., no timeout).
#
timeout 20

# Disable menu options for increased security. These are intended for a lab
# environment where the administrator doesn't want users to mess with the
# operating system. List the names for the options you want to hide from
# the boot menu. Currently supported:
# shell - remove the EFI shell
# tools - remove all EFI tools (shell and gptsync)
# optical - no booting from optical drives
# external - no booting from external disks or USB flash drives
# internal - no booting from internal disks; this setting is not
# recommended because it locks you out of all operating
# systems installed on the internal hard disks.

Je cherche donc le même type de fichier pour refind afin d'y changer la valeur.

Si macomaniac à la réponse à cette question, ça serait génial.
 
Dernière édition:
Toutes cette "méga explication" juste pour entrer 3 lignes de commande dans le terminal (en vérité juste 2 lignes de commande)

&#9757;&#65038;:D Si le but visé n'avait été seulement que d'expliquer comment installer «rEFInd» en remplacement d'un «rEFIt» obsolète, la prolixité de mon topo aurait outrepassé l'exécution stricte de cette mission. Mais disons que j'ai profité de la belle opportunité que tu me donnais :up: pour tenter d'éclairer une petite question collatérale : comment expliquer que «rEFInd», une fois installé, n'expose plus les Macs dotés d'un SSD de tierce-partie, dont l'OS est «Yosemite» et qui ont activé «Trim Enabler», aux risques de plantage que tu peux voir évoqués dans le fil suivant : &#9758;[TRIM] Yosemite et son bridage&#9756;.​

Mais maintenant j'ai un autre souci
Je ne n'ai que 20s pour choisir ma partition...

Avant, quand j'utilisais le logiciel "rEFIT", il y avait un fichier qui s'apellait:"refit.conf"
il fallait juste que j'ouvre le fichier dans un logiciel comme BBEDIT (sur mac) ou notepad++ (sur PC) pour changer la valeur du "timeout" qui était de 20 par défaut et le remplacer par 60 et sauvegarder le fichier et le tour était joué... Je cherche donc le même type de fichier pour refind afin d'y changer la valeur.

&#9757;&#65038; Le même fichier existe et peut s'éditer semblablement avec un logiciel équivalent.

  • D'abord, pour rendre le fichier accessible, il faut monter en volume la partition ESP sur laquelle résident les fichiers exécutables de «rEFInd», parce qu'une fois l'OS démarré son volume est derechef démonté. Pour ce faire, tu relances le «Terminal» et tu saisis dans sa fenêtre :

    Bloc de code:
    diskutil mount /dev/disk0s1

    et &#8617;&#65038; (/dev/disk0s1 est la partition de l'ESP, la 1ère par défaut dans le tableau de partitionnement GUID du disque de l'OS) --> en réaction, tu vois monter sur le Bureau l'icône du volume de cette partition intitulé : EFI.

  • Dans ce volume, voici le chemin au fichier que tu demandes :

    Bloc de code:
    /Volumes/EFI/EFI/BOOT/[COLOR="RoyalBlue"]refind.conf[/COLOR]

  • Afin de l'éditer, je te conseile de télécharger et d'installer l'indispensable (et gratuit) éditeur de fichiers-système : &#9758;TextWrangler&#9756; de l'éditeur BareBones (ce logiciel permet notamment de déverrouiller des fichiers-système protégés en écriture et de les éditer puis sauvegarder directo presto).

    Cela fait, tu fais un ctrl-clic (clic secondaire) sur ton fichier refind.conf et dans le menu contextuel qui surgit, tu choisis : ouvrir avec... et tu navigues dans l'arborescence de l'OS au dossier des Applications et à «TextWrangler» qui te l'ouvre. Ligne 13, tu vois la valeur par défaut :

    Bloc de code:
    timeout 20

    que tu peux donc éditer à 60 si tel est ton vœu avant de sauvegarder le fichier. Au re-démarrage, tu as un délai de 60 sec. désormais avant démarrage automatique sur le disque qui porte la préférence de démarrage. Comme je vois que tu connais bien ce fichier, permet-moi de prendre congé sans plus m'étendre :D.

&#10045;

NB. Nul besoin de re-démonter le volume EFI si tu re-démarres dans la foulée pour tester le nouveau délai. Mais si tu voulais le démonter volontairement, alors dans le «Terminal» tu passes la commande :

Bloc de code:
diskutil umount /dev/disk0s1

et &#8617;&#65038;. Si le volume était récalcitrant, pour cause de processus actif afférant, alors tu saisis :

Bloc de code:
sudo diskutil umount force /dev/disk0s1
&#10045;

J'ai oublié de te signaler un point que tu ne dois pas connaître n'étant pas familier de «rEFInd» --> lorsque tu es à l'écran de choix de boot de «rEFInd», et qu'un disque quelconque se trouve pré-sélectionné, le fait de presser la touche F2 du clavier affiche la colonne de toutes les options de démarrage secondaires sur ce disque : Verbose, Single User, Safe Boot etc. Un menu indispensable qu'il faut savoir démasquer.

&#10048;
 
Dernière édition par un modérateur:
Super, ça fonctionne, j'ai reussi du premier coup a changer le timeout du fichier refind.conf

Deuxième tuto fonctionnel. ( à un détails près)
en fait ce que j'ai fait, c'est que j'ai juste taper la première ligne de commande dans le terminal, le disque (monté) EFI est apparu sur mon bureau, Jai cliqué directement dessus et il n'y avait pas directement le "DEUXIEME" dossier EFI, j'ai donc cliquer directement sur le dossier "BOOT" pour trouver le fichier refind.conf ou j'ai changer directement la valeur du "timeout" en mettant "60" a la place de "20" avec le logiciel "TextWrangler" puis j'ai sauvegarder le fichier... ensuite j'ai ejecter le disque sur mon bureau en fessant un clic secondaire de la souris (au cas ou) avant de redemander mon ordi.

Si ton chemin de dossier était celui là:

/Volumes/EFI/EFI/BOOT/refind.conf

le mien c&#8217;était celui là (je crois)

/Volumes/EFI/BOOT/refind.conf

Bon ce n'est qu'un détails certes...

Pour le bouton F2 je l'avais vus à la première installation du logiciel j&#8217;étais assez curieux d'aller jeter un coup d&#8217;&#339;il.

et dire que toutes ces explications ont eu pour seul objectif "la paresse de ne pas vouloir appuyer sur le bouton "alt" (option) au démarrage" de son MAC. (dans un second but : d'avoir du temps et VISUELLEMENT d'obtenir un "confort psychologique").

En tous cas merci beaucoup pour le temps que tu m'a accordé car j'avais l'impression d'être "une voix qui crie dans le désert" (de l'ignorance).

Je vais enfin avoir le temps d'aller rapidement au toilette pendant le démarrage de mon ordi maintenant (troll).

Pour finir,
Je t'encourage à continuer d'aider les personnes qui ont besoin d'aide sur ce site et surtout de continuer à garder toute cette patience d'expliquer les choses correctements car je viens de me rendre compte d'un truc important, c'est que cette planète manque cruellement de personnes qui savent comprendre et résoudre les problèmes Unix (Le terminal) en général.

Bonne continuation à toi macomaniac.