OS X El Capitan et Trim enabler

quetzal

Membre expert
Club iGen
30 Novembre 2006
1 244
44
Paris
www.transitionaloeuvre.org
A l'installation de El Capitan, Trim Enabler s'est ouvert sur mon MBA 2011, pour dire qu'il n'était pas activé. Je l'ai activé, puis redémarré. Mais le même message se répète à l'ouverture.

Questions :

- Trim Enabler reste-t-il nécessaire sous OS X El Capitan, pour les Mac ayant un disque SSD ?

- Si oui, est-il à jour pour El Capitan ? Si non, pourquoi est-ce qu'il ne vaut pas s'activer.

Merci d'avance pour vos éclairages...
 
- Trim Enabler reste-t-il nécessaire sous OS X El Capitan, pour les Mac ayant un disque SSD ?
Depuis Yosemite 10.10.4 un logiciel tiers n'est plus nécessaire, je te conseillerais d'en faire la désinstallation.

Pour activer proprement le trim, Apple a laissé la porte ouverte pour les SSD tiers en utilisant cette commande dans le Terminal...

sudo trimforce enable

...pour la désactivation c'est ceci...

sudo trimforce disable

...mais il faut impérativement avoir désinstaller tout logiciel tiers. ;)
 
  • J’aime
Réactions: Jacques L
et penser à désactiver la sécurité avant de lancer la commande sous peine de ne pas pouvoir redémarrer.
 
Oui il faut je crois demarrer sur le mode recovery et desactiver le sip rootless puis activer la trim avec ligne de commande puis redémarrer sur recovery et recactiver la securite sip rootless pour etre proteger a nouveau. Cela vas etre encore marrant de devoir faire cette manip pour certaines applications tierces. Mais Pas désactiver complètement !!!!
Il faudrait un petit utilitaire qui enlève et remet la protection.
 
Oui il faut je crois demarrer sur le mode recovery et desactiver le sip rootless puis activer la trim avec ligne de commande puis redémarrer sur recovery et recactiver la securite sip rootless pour etre proteger a nouveau. Cela vas etre encore marrant de devoir faire cette manip pour certaines applications tierces. Mais desactiver complètement !!!! Evite le problèmes ;-)
Il faudrait un petit utilitaire qui enlève et remet la protection.

sûrement pas réactiver le rootless ans désactiver le trim.
si tu redémarre comme ça tu bloquera. c'est soi le trip sur SSD tiers ss le rootless. pas les deux.
 
Je ne comprends pas bien. je viens d'installer 10.11 sur mon iMac 27" fin 2009 que je viens d'équiper d'un SSD. Avant installation j'ai désactivé le trim avec trim enabler puis réactivé et tous fonctionne à merveille!
 
Marrant, j'ai un SSD tiers et le trim est activé.

(Activé en ligne de commande sur yosemite, puis passage en màj sur la GM El capitan, puis 10.11 normal par dessus.)

Ce que je ne comprends pas, c'est la multitude de messages à ce propos qui sont divergents : l'un affirmant qu'il faut désactiver la protection, l'autre non.

A fouiller.
 
Dernière édition:
Marrant, j'ai un SSD tiers et le trim est activé.

(Activé en ligne de commande sur yosemite, puis passage en màj sur la GM El capitan, puis 10.11 normal par dessus.)

Ce que je ne comprends pas, c'est la multitude de messages à ce propos qui sont divergents : l'un affirmant qu'il faut désactiver la protection, l'autre non.

A fouiller.

étonnant.
Il me semblais avoir lu de l'article que je cite qu'il fallait faire une croix sur le rootless. mais si les faits le disent…

A fouiller comme tu dis.
 
Si la désactivation de la protection est nécessaire le temps de passer la commande, on peut la réactiver à postériori… a priori.
 
Par quoi je tente de décrire comment, à l'image des feuilles d'impôts "simplifiées" de l'aimable institution du Trésor Public,
l'OS «El Capitan» simplifie la vie de l'utilisateur final...

361608_original.png

La commande : sudo trimforce enable passée dans le «Terminal» d'OS X n'effectue qu'une seule action : elle recopie la nouvelle extension du noyau Apple dédiée à la gestion du TRIM sur SSD tiers : AppleDataSetManagement.kext du dossier où l'original existe en position de réserve (inactive) : /System/Library/Filesystems dans le dossier : /System/Library/Extensions où cette localisation lui permettra, au re-démarrage, d'être prise en charge par le kernel.

2 cas de figures sont envisageables :

- a) la commande sudo trimforce enable étant disponible depuis la MÀJ «Yosemite 10.10.4» (où le dossier /System/Library/Filesystem contient l'original inactif et où le kernel mis-à-jour supporte son injection), «El Capitan» a pu être installé en mode "mise-à-niveau" d'un OS «Yosemite 10.10.5» dans lequel le TRIM avait été préactivé par la commande sudo trimforce enable. Ce qui concrètement signifie que l'extension du noyau Apple : AppleDataSetManagement.kext pré-existait dans le dossier-Système : /System/Library/Extensions.

L'installateur d'«El Capitan» a pour propriété de "faire le ménage", lors d'une mise-à-niveau, dans les dossiers-Système concernés par la nouvelle System Integrity Protection (SIP) pour virer tout ce qui n'est pas "orthodoxe" et le déplacer à la localisation :
/Library/SystemMigration/History/Migration-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/QuarantineRoot où ces éléments sont désactivés. La nouvelle extension AppleDataSetManagement.kext étant signée Apple, elle est alors parfaitement respectée par la mise-à-nivau à «El Capitan» et le TRIM continue d'être actif sous «10.11.0».

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

- b) la commande sudo trimforce enable n'avait pas été passée sous «Yosemite» et le TRIM sur SSD tiers continuait d'être géré par «Trim Enabler». Ce logiciel modifiant l'extension du noyau Apple dédiée à la gestion du TRIM sur SSD_Apple /System/Extensions/IOAHCIFamily.kext pour lui faire prendre en charge le TRIM sur SSD_tiers, il est clair que l'instruction "faire le ménage" de l'installateur d'«El Capitan» conduit à son remplacement intégral par une IOAHCIFamily.kext 100% Apple, sans préservation de la bidouille d'Oskar Groth --> le TRIM version «Trim Enabler» est donc par là-même automatiquement désactivé à l'install. Et tous les "pare-feu" inventés par Oskar Groth (comme la greffe du boot_args : "kext-dev-mode=1" en NVRAM pour neutraliser le kext_signing + la reconstruction d'un bloc du kernelcache (cache-Système de démarrage) à faire charger sans vérification de détail) sont balayés par la ré-initialisation suivie de l'instruction automatique des kernel_flags du SIP en NVRAM + le remplacement du kernelcache ancien_régime par un prelinkedkernel new_age comme cache-Système de démarrage --> nul besoin de "désactiver" «Trim Enabler», les effets de ce logiciel sont automatiquement balayés à l'install d'«El Capitan» de A jusqu'à Z.

Comme après install d'«El Capitan», le SIP (System Integrity Protection) verrouille récursivement les dossiers critiques du Système (dont /System) par l'attribut-étendu : com.apple.rootless, il est impossible de passer directement la commande sudo trimforce enable qui a pour effet d'écrire au dossier Extensions inclus dans le répertoire /System/Library verrouillé. Il faut donc faire un crochet par le «Terminal» de la «Recovery HD», passer la commande csrutil disable qui neutralise les kernel_flags du SIP en NVRAM et redémarrer sur «El Capitan» où le dossier /System/Library/Extensions est désormais scriptible ("writable") en passant en droits root. Ce qui permet de passer la commande : sudo trimforce enable et donc d'introduire par là dans le dossier des Extensions une copie de la AppleDataSetManagement.kext des Filesystems. À charge pour ceux qui veulent ensuite restaurer le SIP de re-démarrer sur la «Recovery HD» pour passer la commande inverse : csrutil enable, afin de restaurer les kernel_flags du SIP en NVRAM, avant de re-démarrer da capo sur «El Capitan» - ce qui donne l'Apple_revival du « Mythe de Sisyphe », car nul doute que vous n'aurez tôt ou tard à écrire derechef à un dossier protégé du Système...
361608_original.png


--------------------​
 
Dernière édition par un modérateur:
  • J’aime
Réactions: daffyb et da capo
Merci.
Les explications sont claires et documentées.

En résumé, pour les utilisateurs moins à l'aise :

- si le trim a déjà été activé sur Yosemite avec la commande sudo trimforce enable, l'activation est maintenue lors de la mise à jour vers El Capitan

- s'il s'agit d'activer le trim directement sur El Capitan (suite à une clean install par exemple), alors il faudra :
  1. redémarrer en mode recovery
  2. désactiver les protections par la commande csrutil disable
  3. redémarrer
  4. activer le trim par la commande sudo trimforce enable
  5. redémarrer en mode recovery
  6. réactiver les protections par la commande csrutil enable
  7. redémarrer
 
Mais si j'en crois un autre post de notre ami Macomaniac, rédigé à l'occasion d'une chasse au lièvre de mars, l'installeur d'El Capitan (en version finale 10.11.0) détecterait de lui-même son installation sur un SSD (y compris de tierce partie) et activerait alors le TRIM sans qu'on ait la moindre action à effectuer...
 
J'avais cru, en effet, lever un sacré Lièvre, avant de tomber nez-à-nez avec le Jabberwock. Défrisant, non ?

Y a-t-il un "providentialisme" de l'installateur d'«El Capitan» (capacité d'identifier la nature du support et, en cas de SSD_tiers détecté, instruction de préinstaller automatiquement la néo-extension du noyau Apple chargée d'y gérer le TRIM) ? Conjecture pas impossible en soi. Ce témoignage de Choukaz dans le fil qui s'avère un serpent de mer : El Capitan Ecran blanc avec Pomme au démarrage (message #48») :

Quand tu installes le trim est activé par defaut.
dans la précipitation de ma poursuite du Lapin Blanc, je l'avais interprété comme décrivant le résultat d'une Clean Install (une première installation sans OS précurseur). Si c'était le cas, il y aurait preuve. Mais rien ne disait, en fait, que l'installation en question n'était pas une mise-à-niveau d'un OS «Yosemite» dans lequel le TRIM aurait été pré-activé par l'extension Apple. Alors, l'installateur d'«El Capitan» ne ferait que respecter l'existence d'une extension signée Apple en la reconduisant dans le dossier des Extensions, ce qui impliquerait TRIM activé sous «El Capitan» par "héritage" et non par "providence".

Bref : il faudrait réaliser le test --> clean install d'«El Capitan» sur volume d'un SSD_tiers pour vérifier en sortie si le TRIM est ou non activé (= si l'extension AppleDataSetManagement.kext est recopiée ou non dans le dossier des Extensions). Et même un contre-test : clean install d'«El Capitan» sur un HDD, histoire de vérifier si l'extension AppleDataSetManagement.kext est bien absente des Extensions.

☞ dans le doute (après ma rencontre défrisante avec le Jabberwock = «El Capitan» dépouillé des facultés occultes que lui avait prêtées quand je croyais avoir levé un Lièvre), je me suis cantonné dans mon billet de ce matin à rendre compte de la "mécanique rationnelle" - ce que da capo :coucou: a clairement résumé.
 
J'ai quand même un doute sur l'utilisation du mode Recovery + csrutil pour activer Trim via :
sudo trimforce .....
Perso je l'ai désactivé sous El Capitan et réactivé en session en vérifiant à chaque fois l'impact sur le système (A propos/Rapport système/Matériel/SATA/SATA express/Prise en charge de TRIM )
Toujours sans toucher à csrutil.
 
Entièrement d'accord avec jeanjd63 , j'ai activé Trim avec la commande sudo trimforce enable , et le rapport système indique bien la prise en charge de Trim . S'il y a un problème ,je voudrais bien savoir lequel