Redémarrage impossible sous Yosemite à cause de Trim Enabler

Grdouv

Membre confirmé
30 Septembre 2012
13
0
Bonjour à tous,

j'ai un Macbook Pro 17" de 2011 (baie optique remplacée par un SSD M4 128 Go).
Mon système est installé sur le SSD et mes data (Images, Musique, Videos etc...) sont stockées sur le disque dur d'origine.
J'ai mis à jour mon OS X Mavericks pour Yosemite via les MAJ Apple Store.
Le redémarrage après MAJ s'est bien passé mais en arrivant sur le bureau j'ai eu un message me disant que Trim Enabler n'était pas compatible avec mon nouvel OS.
J'ai lancé Trim Enabler, constaté qu'il n'était plus activé, et là j'ai commis une erreur... je l'ai activé + redémarrage du Macbook. Et au redémarrage ça plante sur un panneau gris sens interdit après chargement d'environ la moitié de la barre de progression sous la pomme.
Mon problème est que j'avais temporairement stocké des fichiers sur le Bureau et que si je fais une clean reinstall je risque de les perdre ? à moins que ces fichiers présents sur le Bureau ne soient en réalité stockés sur le DD data et non sur le SSD système ?

Merci de votre aide car là je suis pour la 1ère fois en galère depuis que j'ai mon Macbook...
 
Merci à toi. Non je ne peux pas demarrer sans extensions. Ca plante pareil sur le stop gris apres chargement d'1/3 de la barre de progression
 
Voila ce que ça m'indique quand je liste mes disques :
.Trashes
DATA 750 Go
OS X Base System
CRUCIAL M4 128 Go
Image Volume

---------- Nouveau message ajouté à 07h34 ---------- Le message précédent a été envoyé à 07h34 ----------

Du coup dans le terminal je dois taper :
cd "/Volumes/CRUCIAL M4 128 Go" ?

---------- Nouveau message ajouté à 07h36 ---------- Le message précédent a été envoyé à 07h34 ----------

Parce que si c'est bien ça, apres avoir tapé la commande, retour à la ligne avec le -bash-3.2#
Normalement ça doit me répondre quoi après cette commande ?
 
Ca n'est pas le nom du disque dont tu as besoin, mais le nom du volume.
Il me semble que la commande Terminal pour lister les noms de volumes est ls /Volumes


Néanmoins, Note de la modération: pas trop de rapport avec les portables Mac, je déplace dans le forum adéquat, tu y seras entre de bonnes mains.
 
En fait ce sont bien les volumes que j'ai listés, et non les disques, je me suis trompé dans mon vocabulaire ! Ce que j'ai écrit est le résultat de la commande ls /Volumes
 
Salut Grdouv.

Tu as un moyen facile de vérifer si l'intitulé croquignolet CRUCIAL M4 128 Go est bien actuellement celui du Volume monté où est installé ton OS --> dans le «Terminal», saisis la commande suivante :

Bloc de code:
ls /Volumes/"CRUCIAL M4 128 Go"/Users

et ↩︎ pour activer la commande --> est-ce qu'en réponse tu vois s'afficher la liste des noms-de-comptes d'utilisateurs de ton OS, dont le tien? Si oui, CRUCIAL M4 128 Go (à saisir entre "" ainsi : "CRUCIAL M4 128 Go" pour forcer la lecture des termes séparés comme désignant un objet unique) est bien l'intitulé saugrenu du volume de l'OS ; si rien ne s'affiche malgré le listage de CRUCIAL M4 128 Go en nom de Volume, c'est qu'il y a un 'blème' (question : tu as un SSD et un HDD dans ton MB --> est-ce qu'ils sont solidarisés en un seul volume logique apparent par le procédé du Fusion Drive ou pas?).
 
Salut Maco. Merci pour on aide, ça remonte le moral !
Voilà la reponse a la commande :

.localized Ced Shared


Ced etant mon nom utilisateur sous Mac


Quand à ta question sur la solidarité des 2 DD je ne sais pas te répondre. Jai monté le SSD à la place du DD d'origine et le DD d'origine dans la baie optique pour ne pas brider les capacités du SSD.
 
Bon je pense que je suis un peu dans une impasse malgré vos tentatives pour m'aider.
Je reviens sur mon idée alternative : javais déplacé mon dossier Utilisateur du SSD vers le HDD (avec le tuto suivant : http://www.macg.co/2011/05/pas-à-pa...isateur-de-mac-os-x-sur-un-autre-disque-57629).
Si j'ai bien suivi le tuto, mon Bureau fait partie du dossier Utilisateur et se situe donc sur le HDD, non ?
Si oui ca veut dire qur je peux sortir le HDD pour le mettre dans un boitier externe et faire une clean reinstall de Yosemite sur le HDD ?
 
Salut Grdouv.

Ne désespère pas! Je viens ce matin, sur mon MacBook Pro qui supporte actuellement «Yosemite», de me livrer à l'expérience de ré-initialiser la NVRAM alors que «Trim Enabler» était actif. J'ai réussi (avec beaucoup de difficultés - pour une raison que j'exposerai en apostille de ce billet :D) à planter mon Mac au re-démarrage, et j'ai à la fin des fins accompli ma volonté de l'empêcher de booter en obtenant le panneau d'interdiction de stationner si désiré :D.

Odyssée personnelle assortie de commentaires

J'ai donc re-démarré sur la Recovery HD et en réponse à la commande informative :

Bloc de code:
nvram boot-args

j'ai bien obtenu la réponse :

Bloc de code:
error getting variable

signalant que je m'étais bien enfoncé dans le trou. À partir de là, j'ai suivi la 1ère procédure décrite par Oskar Groth, le développeur de «Trim Enabler», sur sa page de Cindori.org : ☞Trim Enabler and Yosemite☜ qui devrait permettre de supprimer dans la mémoire NVRAM l'instruction de vérification du kext_signing avant de lancer la procédure de reconstruction du prelinked_kernel : kernelcache (qui est le cache comportant le code du kernel + les abrégés aux kexts se trouvant chargé au démarrage) --> cette procédure, censée restaurer le démarrage tout en laissant «Trim Enabler» activé, n'a pas marché pour moi et je me suis retrouvé derechef bloqué au démarrage à l'écran d'interdiction de stationner (ce qui m'a ravi :D).

J'ai donc appliqué la 2è procédure, qui consiste pour l'essentiel à supprimer la kext : IOAHCIFamily.kext modifiée par «Trim Enabler» par la commande :

Bloc de code:
rm -rf System/Library/Extensions/IOAHCIFamily.kext

qui détruit le bundle dans le répertoire des Extensions de la Bibliothèque-Système de l'OS à la racine duquel l'opérateur s'est logé initialement par la commande cd ad-hoc. Puis par la commande 'impossible' autant que 'bégayante' en apparence pour le lecteur inattentif :

Bloc de code:
cp -r [COLOR="Red"]/[/COLOR]System/Library/Extensions/IOAHCIFamily.kext System/Library/Extensions/IOAHCIFamily.kext

il est opéré une copie à partir du dossier des extensions de l'OS abrégé qui est le Système de la Recovery HD (tout est dans la barre / du /System/Library/Extensions/IOAHCIFamily.kext indiquant la source, car, lorsque on est démarré dans la Recovery, le point de montage / indique non pas celui de l'OS - accessible seulement par l'intermédiaire du répertoire des Volumes, mais le point de montage du Système de la Recovery, lequel est un OS abrégé embarquant une Bibliothèque-Système comportant un dossier des Extensions dans lequel réside l'original intouché de la kext Apple_native : IOAHCIFamily.kext inactive par défaut avec les SSD de Tierce_Partie et chargée de gérer le Trim des SSD Apple_natifs).

Donc la commande ci-dessus ordonne bien sans faute une re-copie de la kext Apple_native : IOAHCIFamily.kext du dossier des Extensions du Système de la Recovery au dossier des Extensions du Système de l'OS à la racine duquel l'opérateur s'est logé. CQFD.

À mon avis, la commande suivante de Oskar Groth :

Bloc de code:
chown -R root:wheel System/Library/Extensions

est dispensable parce que futile, l'opérateur de la re-copie identifié dans le «Terminal» de la Recovery sous l'intitulé cryptique : -bash-3.2# étant root lui-même sous son nom de shell comme le sigle terminal # réservé au Super-User le signale. Donc aucune modification des accédants propriétaires au dossier des Extensions de l'OS n'est effective à partir du -bash-3.2#.

Quant à la commande suivante :

Bloc de code:
sudo chmod -R 755 System/Library/Extensions

elle est risible et indigne d'un développeur, car root n'a pas à s'invoquer sudoer pour accéder aux droits du Super-User qu'il ne serait pas en tant que simple admin - puisqu'en tant que root il est celui qu'il est (dédié au divertissement de bompi :coucou:) et tout autant vouée à l'échec dans le «Terminal» de la Recovery qui ne gère qu'un shell : le -bash-3.2 dont le seul et unique opérateur est root et qui, par voie de conséquence, rejette le préfixe de commande sudo qui impliquerait l'existence d'un opérateur autre que root. CQFD.

La commande :

Bloc de code:
touch System/Library/Extensions

est à la rigueur défendable pour réinitialiser la temporalité d'accès au dossier des Extensions qui vient d'être doublement modifié. Quand à la longue commande à rallonges de reconstruction du cache : prelinked-kernel : kernelcache, elle me paraît dispensable et je m'en suis dispensé parce que pénible à saisir.


♤


Résumé pratique à l'usage du jeune Padawan Grdouv :D

En résumé pratique de ces salades, ô Grdouv, contente-toi de re-démarrer dans la Recovery par ⌘R et dans le «Terminal» saisis d'abord :

Bloc de code:
nvram -d boot-args

et ↩︎ qui supprime l'écriture des variables en NVRAM. Puis enchaîne par le tout-en-un :D

Bloc de code:
cp -R /System/Library/Extensions/IOAHCIFamily.kext /Volumes/"CRUCIAL M4 128 Go"/System/Library/Extensions/IOAHCIFamily.kext

et ↩︎ par laquelle tu recopies la kext Apple_native du dossier des Extensions du Système intouché de la Recovery dans le dossier correspondant de l'OS où elle se substitue en l'écrasant à la kext modifiée par «Trim Enabler». Par simple acquis de conscience, tu peux toujours conclure par :

Bloc de code:
touch /Volumes/"CRUCIAL M4 128 Go"/System/Library/Extensions

et ↩︎ (fais un copier-coller de la destination d'après la commande précédente).

C'est ce que je me suis contenté de faire avec mon Mac, et j'ai re-démarré sans aucun problème pour la raison fondamentale que la kext bidouillée avait été restaurée à son intégrité native. Une fois relogé dans ta session, tu peux relancer «Trim Enabler» et le ré-activer da capo sans problème de rebootage.

♧

Apostille à vocation d'apaisement des anxieux :D

Il existe comme je viens de m'en apercevoir ce matin une parade impeccable au risque de plantage sous Yosemite provenant de la combinaison : Trim Enabler activé x Reset_NVRAM x kext_signing : elle consiste dans l'installation de l'Intercepteur d'EFI_Boot : «rEFInd» que l'amateur trouvera sur le site de son développeur Roderick Smith ☞rEFInd☜.

Un MacUser sous Yosemite qui installe «rEFInd» en intercepteur de boot de l'EFI et qui démarre donc son Mac par l'intermédaire du panneau de boot de «rEFInd» (procédé qui permet par ailleurs d'activer l'option de boot qu'on veut en mode graphique sans presser de touches au démarrage) - ledit MacUser, donc, peut ré-initialiser la NVRAM tant qu'il veut, la kext_signing qui se ré-implémente dans la NVRAM en instruction passée à l'EFI ne ... passe pas l'écran de boot de «rEFInd» dont l'interception neutralise cette instruction [ce - du moins d'après mon expérience sur mon MacBook Pro]. Le boot de l'OS avec «Trim Enabler» activé s'opère donc même à NVRAM réintialisée :D.

[NB. Il m'a fallu faire sauter «rEFInd» et aussi son cache pour pouvoir planter mon Mac ce matin par ré-initialisation de la NVRAM et «Trim Enabler» activé.]

♡

<sinon, Grdouv, en désespoir de cause, inutile de te transformer en mécanicien pour démonter ton disque : dans la Recovery, tu actives la fonction : Ré-installer OSX qui va télécharger un installateur de Yosemite tout neuf (long car +5Go comprimés) puis ré-écrire à partir de lui les fichiers-système de ton OS dans la préservation des données utilisateurs. Et hop! boot. Ce me semble bien lourd comme procédé, néanmoins, puisque le seul changement qui va être apporté au système va consister à écraser la kext bidouillée par «Trim Enabler» : IOAHCIFamily.kext par la kext Apple_native non bidouillée, chose que tu peux faire rapido presto avec la commande dans le «Terminal» qui puise dans les ressources de l'OSX abrégé de la Recovery - lequel peut être vu comme une espèce de garde-meubles bien ustensile à l'occasion :D>

&#9826;
 
Dernière édition par un modérateur:
Salut Maco.
Bon là tu m'as scotché j'avoue !!!!
L'espoir renait....
Je teste ton super tuto ce soir et te reviens dès que c'est fait.
Un GRAND merci pour ton aide.
 
Bonjour,

Je suis dans une panade similaire. N'ayant ni partition Recovery, ni Terminal accessible, j'ai créé une deuxième partition sous 10.8. Mais le terminal, ne me permet pas de modifier l'autre volume visiblement. Un indice?
 
macomaniac,
j'avoue ne pas avoir tout compris ton analyse, j'ai même failli avoir mal au crâne :D
Toujours est-il que j'ai suivi le guide du jeune Padawan et que mon Macbook refonctionne au poil. J'en ai profité pour upgrader Trim Enabler dans la dernière version 3.3 à priori compatible avec Yosemite.
Je sais pas si tu es sorcier ou informaticien, en tout cas je te remercie VIVEMENT pour le temps passé à m'aider, c'est très sympa de ta part...
Que c'est bon quand ça refonctionne !
Bonne soirée.
 
Salut Grdouv.

Je suis doublement content que tu aies réussi : d'abord pour toi, tiré d'affaire à moindre frais ; et ensuite parce que ta réussite valide ce que j'appellerais la 'méthode express' (©macomaniac :D) de se sortir du pétrin lorsque, le trim activé sous «Yosemite 10.10» par l'intermédiaire de «Trim Enabler», on commet la bévue de réinitialiser la NVRAM par la combinaison de touches &#8984;&#8997;PR au boot, ce qui a pour effet de planter le démarrage du Mac sur l'écran d'interdiction de stationner suivant :

342265_original.jpg

[photo inexacte, car sous «Yosemite» on a affaire à une barre de chargement - ce qui démontre que l'auteur de l'article des infos de MacGé dont j'ai recopié le cliché l'a piqué sur le net et pas capturé de son propre écran - d'où j'infère qu'il n'a pas personnellement expérimenté le plantage afin de tester les recettes qu'il propose de seconde main :D]

J'admets que mon petit 'discours en prose' abstruse précédant la 'recette abrégée miracle' ne relève pas de ces pages de la littérature d'aventure dont l'imagination apprécie le pouvoir d'évasion, le soir venu :D.

En résumé de la manip : d'abord, on ré-initialise la mémoire NVRAM de la Carte-Mère 'par acquis de conscience' (vu que le plantage est déjà issu d'une telle ré-intialisation) ; puis, on liste les volumes montés pour vérifier le nom du volume de l'OS qu'il s'agit de renseigner dans la commande suivante ; ensuite, à la place de la kext : IOAHCIFamily.kext bidouillée par «Trim Enabler» dans le répertoire : System/Library/Extensions de l'OS «Yosemite», on recopie la kext Apple_native : IOAHCIFamily.kext résidant dans le dossier correspondant des Extensions du Système de la «Recovery HD» ; enfin, on passe une couche de finition en 'remettant les pendules à l'heure' :D concernant le dossier global des Extensions de l'OS qui a été manipulé.

Ce qui donne en abrégé dans le «Terminal» de la «Recovery HD» :


  1. pour ré-intialiser la mémoire NVRAM :

    Bloc de code:
    nvram -d boot-args

    et &#8617;&#65038; (presser la touche 'Entrée' du clavier pour activer la commande).

  2. pour lister les volumes montés :

    Bloc de code:
    ls /Volumes

    et &#8617;&#65038; --> le nom du volume de l'OS «Yosemite» s'affiche à côté du OS X Base System qui est le volume de la «Recovery HD» --> l'intitulé par défaut est Macintosh HD mais toutes sortes d'intitulés sont possibles suite à renommage --> comme règle générale, mettre dans les commandes suivantes l'intitulé complet, en un seul ou en plusieurs mots, entre "" afin de forcer la lecture comme intitulé d'un seul objet - ce qui donne : "Nom du Volume de l'OS".

  3. pour recopier la kext (extension du noyau) native du dossier des Extensions du Système de la «Recovery HD» au dossier des Extensions de l'OS «Yosemite» de manière à écraser la kext bidouillée :

    Bloc de code:
    cp -R /System/Library/Extensions/IOAHCIFamily.kext /Volumes/[COLOR="Red"]"Nom du Volume de l'OS"[/COLOR]/System/Library/Extensions/IOAHCIFamily.kext

    et &#8617;&#65038;

  4. pour remettre enfin les pendules à l'heure concernant le dossier des Extensions de l'OS qui a été manipulé :

    Bloc de code:
    touch /Volumes/[COLOR="Red"]"Nom du Volume de l'OS"[/COLOR]/System/Library/Extensions

    et &#8617;&#65038; [NB. Il est possible de récupérer par copier-coller la séquence du chemin /Volumes/"Nom du Volume de l'OS"/System/Library/Extensions à partir de la commande précédente.]

&#9758; quitter le «Terminal» (&#8984;Q). Re-démarrer. Il est possible que ce processus paraisse traîner indéfiniment sans que la fenêtre affichée des Utilitaires OSX disparaisse. Je préconise d'aller au Menu &#63743; de la barre suéprieure des menus, choisir Disque de démarrage, sélectionner le volume de l'OS «Yosemite», presser le bouton : 'Redémarrer' et laisser faire le temps qu'il faut. Le Mac devrait finir par redémarrer jusqu'à l'ouverture régulière de session.

&#9758; revenir alors à l'application «Trim Enabler» et ré-activer le patch.

----------&#9828;

Salut abioninho.

J'ai bien capté ton message.

Pour que la manip fonctionne, il faut nécessairement avoir sous la main la version native non-bidouillée de la kext Apple : IOAHCIFamily.kext et celle-ci réside dans le dossier des Extensions du Système de la «Recovery HD 10.10». Je ne sais pas comment tu as fait ton affaire pour ne pas avoir de «Recovery HD» sur le disque de ton Mac mais c'est clair que dans ces conditions tu es coincé.

Es-tu sûr, en démarrant avec la touche 'alt' pressée, que l'écran de choix du disque de démarrage ne te propose pas un disque intitulé : Récupération 10.10? Si c'était le cas, tu démarres dessus et tu appliques le topo précédent en veillant seulement au bon intitulé du volume de l'OS «Yosemite» dans les commandes.

Si tu n'as pas de «Recovery HD» mais étant quand même capable de démarrer sur l'OS «Mountain Lion 10.8» de ta partition, alors voici ce que tu peux faire :


  • J'ai chargé dans le dossier public de ma «DropBox» la kext : IOAHCIFamily.kext de «Yosemite 10.10» sous forme zippée : &#9758;IOAHCIFamily.kext&#9756;. Télécharge-là (moins de 1 Mo!) depuis ta session de «Mountain Lion», dé-zippe-là (si cela ne se fait pas automatiquement) et veille à la localiser sur ton Bureau de session (et pas dans un autre endroit, genre le dossier 'Téléchargements'). Il faut donc qu'il y ait sur ton Bureau l'élément : IOAHCIFamily.kext - on est d'accord? <c'est pour que je sache où il est dans les commandes suivantes que je te propose>

  • Va maintenant dans ta session de «Mountain Lion» à l'adresse : Applications/Utilitaires et lance le «Terminal». Dans la fenêtre qui s'affiche, passe alors successivement les commandes suivantes (après l'activation par &#8617;&#65038; de chaque commande, l'invite de commande intiale de type abioninho$ se réaffiche par saut de ligne à jouxter la marge gauche) :

    1. Bloc de code:
      nvram -d boot-args

      et &#8617;&#65038; (Presse la touche 'Entrée' du clavier pour activer la commande).

      --------------------​
    2. Bloc de code:
      ls /Volumes

      et &#8617;&#65038; (NB. le l de ls est la minuscule de la lettre L, pas le chiffre 1) --> tu vois s'afficher (entre autres) le nom exact de ton OS «Yosemite» planté : mets dans les commandes suivantes l'intitulé global quel qu'il soit entre "" ce qui donne en l'adaptant un équivalent de "Nom du Volume de l'OS".

      --------------------​
    3. Bloc de code:
      sudo cp -R ~/Desktop/IOAHCIFamily.kext /Volumes/[COLOR="Red"][FONT="Courier New"]"Nom du Volume de l'OS"[/FONT][/COLOR]/System/Library/Extensions/IOAHCIFamily.kext

      et &#8617;&#65038; (déroule toute la commande ; montre-toi soigneux à la /, à l'espace et au caractère près pour saisir cette espèce de Volapük informatique :D) --> une demande de password s'affiche (car tu passes une commande sudo) --> tape ton mot-de-passe admin à l'aveugle - aucun caractère ne se montrant à la frappe - et derechef &#8617;&#65038;.

      [Note : l'invocation de sudo est requise ici, car tu n'es pas dans un «Terminal» de la «Recovery HD» en tant qu'opérateur root par défaut, tu es dans un «Terminal» de l'OS en tant que simple opérateur admin et il te faut te promouvoir sudoer - lieu_tenant de root - pour passer une commande affectant le dossier protégé des Extensions de l'OS «Yosemite».]

      --------------------​
    4. Bloc de code:
      sudo chown -R 0:0 /Volumes/[COLOR="Red"]"Nom du Volume de l'OS"[/COLOR]/System/Library/Extensions/IOAHCIFamily.kext

      et &#8617;&#65038; (déroule la commande encore ; dans un délai de grâce de 5' t'habilitant sudoer, tu n'as pas besoin de te ré-authentifier pour passer de nouvelles commandes sudo) --> tu rétablis par là les accédants propriétaires user=root et group=wheel sur la kext recopiée dans les Extensions de l'OS «Yosemite», car ta manipulation du fichier téléchargé dans ta session les a altérées en appropriant indûment l'extension à toi et au groupe staff.

      [NB. recopie tout le chemin /Volumes/"Nom du Volume de l'OS"/System/Library/Extensions/IOAHCIFamily.kext par copier-coller d'après ta commande du «Terminal» précédente.]

      --------------------​
    5. Bloc de code:
      sudo touch /Volumes/[COLOR="Red"]"Nom du Volume de l'OS"[/COLOR]/System/Library/Extensions

      et &#8617;&#65038; (idem : copier-coller du chemin, mais en s'arrêtant à : Extensions).

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

    6. Quitte le «Terminal» par &#8984;Q. Va à : Menu &#63743;/Préférences Système/Disque de démarrage, sélectionne le volume de ton OS «Yosemite» et presse le bouton : Re-démarrer. Si tu n'as pas commis d'erreur de saisie dans les commandes, tu devrais pouvoir ouvrir ta session dans «Yosemite».

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

    7. Re-lance alors l'application «Trim Enabler» et réactive le patch s'il y a lieu.

      DONE

      :D

----------&#9831;
 
Dernière édition par un modérateur:
Par acquit de conscience, j'ai essayé de tout lire.
 
  • J’aime
Réactions: wip
Par acquit de conscience, j'ai essayé de tout lire.

&#9757;&#65038;:D bompi, à qui incombe en qualité de modo l'ingrate charge de lire aussi les épîtres de macomaniac (dont la longueur répugne à son goût de la concision attique), s'en acquitte nonobstant par acquit de conscience malgré le mince acquis de satisfaction tiré de cette ascèse prosaïque...

[Je crois que lors de ma lointraine acquisition de cette locution assez peu usitée, j'ai mésinterprété son sens et compris que la conscience se dotait vaillamment d'un acquis de vertu au lieu de se signer péniblement un acquit l'innocentant du grief d'avoir esquivé un devoir. Lapsus révélateur d'une préférence pour l'éthique par rapport à la morale.]
 
  • J’aime
Réactions: daffyb et bompi