Enlever le SIP d’El Capitan

J’avoue, j’ai un peu hésité avant de faire ce post (et ce mauvais jeu de mot). Je trouve que le SIP (System Integrity Protection) est une nouveauté intéressante d’El Capitan et qu’il peut éviter quelques problèmes chez un utilisateur lambda. Mais j’ai d’une part la faiblesse de croire que vous n’êtes pas des utilisateurs lambda, et d’autre part j’ai dû désactiver le SIP pour diverses raisons, donc je suppose que je ne dois pas être le seul.

Le SIP, c’est quoi ? L’article d’Ars Technica l’explique bien, mais je vais simplifier rapidement (corrigez-moi si je me trompe). Jusqu’à Yosemite, un utilisateur administrateur (je passe l’utilisateur classique) pouvait élever ses droits en utilisant la commande sudo (ou en tapant son mot de passe, quand le système le proposait) et devenir ce qu’on appelle l’utilisateur root, c’est-à-dire l’utilisateur qui a tous les droits. Typiquement, écrire dans un dossier système, modifier un pilote (une méthode souvent utilisée dans les posts du blog), supprimer une application préinstallée, etc.

Avec le SIP d’El Capitan (un temps appelé rootless), cette possibilité n’existe plus. Impossible de supprimer le jeu d’échec (au hasard) ou d’aller modifier un pilote nVidia pour prendre en charge manuellement le Thunderbolt (encore au hasard). Ce n’est globalement pas trop un problème, surtout que l’avantage évident du SIP, c’est que si vous êtes incapables de modifier un fichier système… un éventuel malware sera tout aussi incapable de le faire.

L’autre fonction du SIP, franchement plus gênante, vient du fait que la signature des pilotes devient obligatoire. Avec Yosemite, une ligne de commande permettait de passer outre la signature des pilotes, ce qui permettait d’une part d’utiliser des pilotes modifié (comme des pilotes nVidia en Thunderbolt) et d’autre part d’utiliser des pilotes « officiels » qui n’étaient pas signés par les développeurs du matériel. Avec El Capitan, impossible de passer outre la signature des pilotes sans désactiver le SIP. C’est bien plus gênant que la protection des fichiers, pour la bonne et simple raison que pas mal de pilotes d’interfaces audio et de matériel en général ne sont pas signés.

Si jamais vous êtes dans ce cas-là (et pas si vous avez essayé d’économiser 3 € en commandant un adaptateur Ethernet noname), il est possible de désactiver le SIP. Franchement, je ne vais pas vous le conseiller, sauf si vous avez une bonne idée de ce que vous faites. Si le SIP ne vous bloque pas, ne le désactivez pas : c’est une nouveauté intéressante, même si elle enferme encore un peu plus OS X dans un carcan.

La méthode ? Redémarrez sur la partition de restauration (touche cmd + R au démarrage), lancez le Terminal (via le menu Utilitaires) et tapez la commande suivante.

csrutil disable

Ensuite, redémarrez OS X et tout devrait fonctionner comme avant. Attention, le SIP n’est pas lié à un disque précis, les paramètres sont stockés en NVRAM, donc il reste activé (ou désactivé) même après un changement de disque ou un formatage. De même, démarrer sur un disque externe sous El Capitan ne vous donnera pas les droits pour modifier les fichiers protégés par le SIP sur un disque interne (mais ça marche avec un disque externe sous Yosemite).

Pour terminer, le SIP pose encore quelques soucis actuellement mais on peut supposer qu’à terme, les utilitaires passeront par des méthodes « validées » par Apple pour effectuer leurs tâches, même si certains disparaîtront sûrement, au grand désespoir de leurs utilisateurs.