TRIM sur Yosemite : tout ce qu'il faut savoir

Stéphane Moussie |

Maintenant qu'OS X Yosemite est disponible en version finale, on peut faire le point sur le fonctionnement de la commande TRIM avec le système. Pour mémoire, cette commande permet d’éviter une dégradation des performances du SSD et elle limite aussi en partie son usure (les détails dans notre dossier).

L'activation du TRIM compliquée par une nouvelle mesure de sécurité

Sur les Mac, le TRIM n’est activé par défaut que sur les SSD intégrés. Si vous avez remplacé le support de stockage de votre machine par un SSD tiers, c’est à vous d’activer cette commande. L'opération était très simple jusqu'à Mavericks — il suffisait de cliquer sur le gros bouton du logiciel spécialisé TRIM Enabler —, mais Yosemite a compliqué cela.

Apple a introduit une nouvelle mesure de sécurité baptisée kext signing. Un kext est une extension du kernel, le noyau du système. Si Yosemite repère qu’une extension du kernel a été modifiée, il ne la chargera pas par précaution. Or, TRIM Enabler altère justement une de ces extensions, et se retrouve donc bloqué par le système.

Au cours du développement du système, il subsistait un petit doute sur la présence du kext signing dans la version finale de Yosemite — Apple s'était montrée vague sur le sujet. Maintenant qu'OS X 10.10 est disponible en version stable, on peut juger sur pièces que le kext signing est toujours de la partie.

Comment activer le TRIM

Le seul moyen d'activer la commande TRIM sur Yosemite, c'est de désactiver le contrôle d'intégrité des extensions. Pour cela, le plus simple est d'utiliser TRIM Enabler (version 3.3). Son développeur l'a mis à jour exprès pour ce cas de figure. En premier lieu, l'utilitaire va désactiver le kext signing. Après un redémarrage de l'ordinateur, on pourra ensuite activer le TRIM toujours à partir du même logiciel.

TRIM Enabler permet aussi de faire marche arrière : on peut désactiver le TRIM et restaurer le contrôle d'intégrité des extensions au besoin.

Oskar Groth, le développeur de l'utilitaire, reconnait que désactiver une mesure de sécurité pour faire fonctionner le TRIM est loin d'être idéal, mais il explique ne pas avoir trouvé un autre moyen et rejette la faute sur Apple. « Apple garde le pilote AHCI privé, rendant impossible pour tout le monde, même les gros fabricants, de créer un pilote pour leur SSD », souligne-t-il.

Les fonctions de base de TRIM Enabler sont gratuites. En payant 10 $, on débloque des fonctions supplémentaires (benchmark, divers tweaks et moniteur SMART avancé). Il existe un second logiciel qui sert à activer le TRIM sur Mac, Chameleon SSD optimizer. Il est gratuit (les dons sont acceptés) et compatible avec Yosemite.

En cas de problème

Il est primordial de désactiver le kext signing avant de démarrer un ordinateur où le TRIM a été activé sur un SSD tiers. Autrement, Yosemite ne va pas charger le pilote qui a été modifié et la machine va rester bloquée sur un écran gris.

Le réglage du contrôle des extensions est stocké dans la NVRAM/PRAM, une petite quantité de mémoire qui est chargée au démarrage de la machine. Si vous devez réinitialiser la NVRAM/PRAM pour quelque raison que ce soit, désactivez d'abord le TRIM, car la réinitialisation de la mémoire va réactiver le kext signing.

Le panneau « stationnement interdit » qui reste à l'écran. Photo atrashids

Si vous êtes confronté au problème de l'écran gris au démarrage, Oskar Groth donne la marche à suivre pour le résoudre :

  1. 1. Démarrer sur la partition de restauration d'OS X en pressant les touches Commande + R
  2. 2. Ouvrez le Terminal
  3. 3. Tapez cette commande : nvram boot-args. Si la réponse est « kext-dev-mode=1 », vous pouvez sauter à l'étape 6, sinon continuez dans l'ordre
  4. 4. Tapez cette commande : nvram boot-args=kext-dev-mode=1
  5. 5. Redémarrez sur la partition de restauration encore une fois
  6. 6. Ouvrez le Terminal et tapez ces commandes en remplaçant "XXX" par le nom de votre partition (les guillemets doivent être présents) :
    • cd "/Volumes/XXX"
    • touch System/Library/Extensions
    • kextcache -prelinked-kernel System/Library/Caches/com.apple.kext.caches/Startup/kernelcache -K System/Library/Kernels/kernel System/Library/Extensions
  7. 7. Attendez jusqu'à ce que l'opération se termine (5 à 10 minutes) et redémarrez.

Si vous avez des questions ou des remarques, le sujet est largement débattu sur les forums.

avatar greggorynque | 

Non tu ne comprends pas bien : Même avec un SSD pas d'origine un mac fonctionne sous yosemite.
Mais sans TRIM (fonction importante pour conserver de bonnes performances et limiter l'usure dudit SSD dans le temps.

Pour activer cette fonction il faut passer par la petite manip décrite ici car la méthode utilisée jusque là peut bloquer le redémarrage. La plupart des gens activant le TRIM utilisant "trim enabler", il leur suffira de mettre à jour ce logiciel AVANT l'update vers Yosemite, rien de bien sorcier, mais la précision est importante pour les gens concernés.

Quand aux hackintosh, c'est encore une autre problématique, et ça peut se révéler TRES TRES compliqué, pour que certains matos soient correctement reconnus, rien à voir avec la petite manip décrite ici.

Bref le plus regrettable c'est sans doute qu'apple bloque le TRIM volontairement, pour compliquer la vie des utilisateurs et pousser à l'achat des ses options SSD facturées à prix d'or.

avatar YARK | 

Ch'tite question : lors d'une petite maintenance classique (Utilitaire de disque/réparer le disque, permissions), on est certain que rien ne va sauter au niveau de cette manip' ?

avatar sedition | 

Quel soucis pour les Hackintoshs ?

Quand bien même le nouveau système de ktext pose problème comme tu sembles l'insinuer, une simple manip pour le désactiver (via Tim Enabler 3.3 par exemple) et tout marche.

J'ai du mal à voir de quoi tu parles. Merci de préciser.

avatar arthuros | 

bonsoir à tous,
j'ai fais la mise à jour de Trim version 3.3, puis redémarré ma machine, est ce que je dois faire autre chose ?
merci

avatar EricdeB | 

Ben tu ouvres Trim enabler, tu l'actives et tu suis les recommandations (un redémarrage pour désactiver le kext signing et un autre pour l'activation du Trim).

avatar arthuros | 

Merci, en fait dans mon rapport système Trim est bien pris en charge donc, je n'ai pas d'autre manie à faire ?

avatar arthuros | 

Merci, en fait dans mon rapport système Trim est bien pris en charge donc, je n'ai pas d'autre manie à faire ?

avatar EricdeB | 

Tu as un SSD Apple ou tiers??? Si c'est un Apple c'est normal...

avatar arthuros | 

CRUCIAL

avatar EricdeB | 

Bizarre... Bon ben si l'OS te dit que ton Trim est activé c'est bon. Mais c'est étrange que tu n'aies pas eu à redémarrer, etc.

avatar arthuros | 

en fait, j'avais Trim sur ma machine, j'ai installé Yosemite, Trim tournait toujours sous l'ancienne version, j'ai fais la mise a jour de Trim en 3.3, puis j'ai redémarré, et j'ai réenclancé Trim.

avatar EricdeB | 

Ah bon ben t'as fait ce qu'il fallait (pile comme moi en fait). Ce qui m'étonnait c'est que tu n'aies pas eu à redémarrer après l'avoir enclenché. Mais bon, peu importe, c'est ok.

avatar arthuros | 

c'est ok merci

avatar jasmus | 

tu as quel modèle?

avatar Phoenixxu | 

@arthuros :
Oui va dans Trim Enabler et active le Trim si ce n'est pas encore fait :-)

avatar misc | 

Je considere d'utiliser des SSD barrette Apple avec un adaptateur SATA (eviter les complications de TRIM avec mes Mac mini) Quelqu'un sait si le SSD est bien reconnu en tant qu'Apple a fin que le TRIM soit actif par default?

edit: Commande passée, on verra bien.

avatar Laurent S from Nancy | 

"Sur les Mac, le TRIM n’est activé par défaut que sur les SSD intégrés."

Ouf, merci de cette piqure de rappel juste au début de l'article, j'ai cru avec horreur un court instant que le Trim avait été mis en place seulement depuis Yosemite.

avatar Phoenixxu | 

@jasmus :
Tu auras besoin de l'activer.
Il est peut-être activé par défaut sur Windows mais sur le Mac tu n'as pas le choix... Grâce à la bienveillance d'Apple. .

avatar Dark Oui-Oui | 

Pourquoi Apple ne commercialise pas en pièces détachées ses propres SSD et barrettes de RAM compatibles avec les machines les acceptant (Mac Pro, anciens MacBook/iMac etc)? Je serai prêt à investir un plus que pour un fabricant tiers avec la certitude d'avoir un matériel compatible. Apple continuerait de se faire des gros sous en satisfaisant ses clients sur la durée et tout le monde serait content.

avatar Dark Oui-Oui | 

HS mais pénible pour autant:
-Aux développeurs de MacGé-
À quand une MAJ l'Appli mobile?
Les commentaires tronqués à la lecture et/ou masqués durant la frappe durent depuis le passage à IOS 8.

Merci.

avatar MKO | 

Article un peu compliqué. Je regrette que l'article n'explique pas simplement à partir de maverick comment installer Yosemite et ne pas avoir de pb de trim avec tel ou tel logiciel... Par ce que c'est je pense presque la totalité des lecteurs qui pensait trouver la démarche dans un tel article...

avatar fredseg | 

C'est bien gentil tout ça mais avant de saboter volontairement un mécanisme de sûreté de Yosemite il faudrait commencer par réponse à la question : le trim est-il *vraiment* indispensable ? Il me semble que l'effet sur le performance est difficilement perceptible, et que l'effet sur la durée de vie n'intervient que dans un délai de plusieurs années d'utilisation intensive ?

avatar Laurent S from Nancy | 

@Fredseg

Ca fait 7 ou 8 ans que les premiers SSD "grand public" sont disponibles sur le marché. Et si nombre de gens hésitent encore à franchir le pas pour des raisons de "durée de vie moindre", je ne me souviens pas avoir lu ou entendu ces dernières années qui que ce soit se plaindre que son SSD était mort "prématurément" ni même "mort de vieillesse" (hors problèmes mécaniques ou défaut de conception...)

Sachant que les nouveaux modèles tendent à optimiser encore d'avantage la répartition des cycles d'écriture sur tout le disque , je n'irai pas jusque dire que le SSD est "increvable" mais au fur et à mesure que les années passent et que la technologie évolue cette crainte de l’obsolescence programmée (et dans le cas présent, le terme n'est pas galvaudé) des cellules ne devrait plus être déterminante lorsque l'on choisit de passer à ce type de stockage pour un usage grand public...

avatar abioninho | 

Vous tombez vraiment à point pour le coup! J'ai utilisé Trim Enabler qui me disait de redémarrer avant d'activer la TRIM pour pouvoir désactiver KEXT... Et juste avant de redémarrer je l'avais relancé et appuyé sur le,gros bouton... Le logiciel a planté et j'ai fais redémarrer le Mac! Demain partiel de Macroéconomie... J'avais le panneau! J'étais perdu! Merci MacG

avatar abioninho | 

Je vais pouvoir le faire depuis une clé USB ML (je nais pas de partition recouvert sur mon SSD)

avatar omegaman | 

Un peu en marge du sujet ... Je suis encore sous Mavericks et je viens d'installer la màj de sécurité 2014-005. Mon petit doigt m'a dit d'aller faire un tour du côté des Informations Système et ... le Trim était désactivé (Crucial M550 1To). Suis-je le seul dans ce cas ? Un petit coup de Trim Enabler et c'est reparti.

avatar cham | 

@omegaman :
Je pensais que le M550, avec son garbage collector, n'avait pas besoin de trim. Quelqu'un peut-il nous donner des précisions svp, sur garbage collector vs. trim ? Je suis sur le point d'acheter un M550, pour l'utiliser sans trim.

avatar Chris_974 | 

Bonjour,
Effectivement un SSD muni de son garbage collector n'a pas besoin de TRIM car la fonction est identique. J'ai un SSD 840 EVO 1TO sans trim enabler utilisé car le SSD possède également la fonction garbage collector, mon iMac late 2009 démarre en 10S sur Yosemite session activée et s'éteint en 5s. Je ne reconnais plus mon iMac tellement il est rapide. Voir les résultats des tests sur :
http://www.xbitlabs.com/articles/storage/display/samsung-840-evo_6.html

Maintenant j'ai un casse-tête à résoudre, c'est la mise à jour du firmware du SSD 840 EVO qui vient d'arriver, pas facile à faire car il faut une clé USB bootable ou un CD bootable.

avatar patrick L. | 

Bonjour,
Une question de mec pas doué en informatique :-(
Quand vous indiquez que TRIM Enabler désactive kext signing, cela veut-il dire que le fait d'installer ce logiciel, c'est fait automatiquement ou faut-il faire quelque chose ?

Quant à Caméleon, on se retrouve avec un écran gris ! J'ai été obligé d'utiliser mon back-up pour restaurer.

Par avance merci de votre retour et bonne journée à tous
patrick

avatar lbalda4 | 

J'ai un Fusion Drive de 3 To, donc un SSD de 128 Go et sur information système il n'est pas indiqué De prise en charge du TRIM. Quelqu'un aurait une réponse? Merci

avatar jasmus | 

J'ai une autre question. Je viens de commander mon SSD crucial MX100 512go. Je le reçois demain et je n'ai pas envi de cloner mon HDD. Comment dois je procéder pour installer sur le SSD Yosemite sachant que je vais démonter mon macbook pro pour remplacer le disque?
Merci beaucoup de votre aide

avatar omegaman | 

Le plus simple est de télécharger l'installeur deYosemite et DiskMaker X, de créer avec ce dernier une clé USB d'installation de Yosemite, de remplacer le HDD par le SSD et de redémarrer ton MacBookPro sur la clé USB pour installer Yosemite sur le SSD. Je l'avais fait avec Mavericks et cela fonctionne très bien.

avatar jasmus | 

ok merci pour ton aide. Est ce que je peux utiliser l'utilitaire de disque plutot que diskmaker x pour créer la clé usb bootable? Et aussi ne dois je pas formater le SSD en mac OS étendu? ou bien l'ai t il déjà? (un crucial mx100) merci beaucoup pour ton aide

avatar omegaman | 

Tu peux utiliser l'utilitaire de disque. Il existe même des tutos comme ici :
http://lemagtechno.com/tuto-yosemite-bootable-usb-os-x-10-10/
mais tu te compliques la vie. Disk Maker X fait tout et tout seul. J'aime bien comprendre les mécanismes, mais je préfère la simplicité !
Pour le Crucial, oui, il faut que tu l'aies formaté auparavant en HFS+ journalisé via l'utilitaire de disque. Tu peux le faire depuis ton HDD en mettant le SSD dans un boîtier ou un dock (méthode que j'avais utilisée), ou remplacer le HDD par le SSD, mettre le HDD dans un boîtier ou un dock, démarrer dessus, et enfin formatter le SSD (c'est donc un plus long !).

avatar misc | 

Au passage, le fabriquant de ssd "angelbird" aurais des ssd sur lequel OSX activent le TRIM par défaut. J'imagine un identifiant "reverse engineering", pourquoi pas, tant que ça marche.

avatar jasmus | 

Du coup mieux vaux ne pas installer trim enabler pour l'instant.

avatar lanfeust401 | 

Bonjour

je suis peut être pas au fait de tous les détails mais j'ai installé Yosemite sur un SSD tiers, activé le Trim avec Trim Ensabler puis je me suis "amusé" à faire un reset de la PRAM (alt+cde+p+r) au démarrage de mon macbook pro.
et pourtant mon macbook pro continue à booter et le trim toujours activé.
J'ai du loupé un détail ...

avatar Az | 

Comment vérifié si Kext signing est activé ou non ?

avatar christophe Sidot | 

Bonjour

Comme vu avec leurs support respectifs : le Kingston SSDNowV300 240 go et le crucial MX100 256 Go ont des garbage collectors qui régénère le disque SSD pendant ses temps d'inactivité. Il ne faut PAS activer le trim de Yosemite, pas besoin de de trim enabler. Ces SSD sont donc compatibles Yosemite.

cdlt
Christophe

avatar mugna | 

Bonjour tt le monde, voila apres un reset de la pram je me retrouve avec le fameux écran gris, j ai booter sur Recovery, rentrer ds le terminal, mais je ne comprends pas trés bien les dernieres lignes des commandes que vous ecrivez, entre les espaces interminables, le fait d aller à la ligne, je suis un peu perdu.
Dc est ce que qqn pourrait m'ecrire clairement le point numéro 6
Merci par avance

Pages

CONNEXION UTILISATEUR