ERREUR: lors de l’exécution de gem… (Errno :: EPERM) Opération non autorisée

Je viens de mettre à jour mon Mac vers OSX 10.11 El Capitan et quelques joyaux ne sont pas restés.

Le problème est apparu lorsque j’ai essayé de faire fonctionner des installations de gemmes différentes … par exemple:

> sudo gem install compass 

Une fois que j’exécute, j’obtiens l’erreur:

 > ERROR: While executing gem ... (Errno::EPERM) Operation not permitted 

Cela se produit avec d’autres gemmes, aussi bien …

J’ai lancé Homebrew et essayé d’installer à nouveau Ruby, mais rien ne fonctionne.

J’ai trouvé la réponse sur les problèmes SASS .. https://github.com/sass/sass/issues/1768

Apparemment, avec OSX el Capitan, il existe une nouvelle fonction de sécurité qui vous empêche de modifier les fichiers système appelés Rootless. Vous aurez donc 2 options:

Si vous installez des gemmes sur /usr/local/bin il n’y aura pas de problème, car sans root n’affecte pas ce chemin.

sudo gem install -n /usr/local/bin GEM_NAME_HERE

Vous rencontrez ce problème en raison d’une nouvelle fonctionnalité de sécurité appelée Protection de l’intégrité du système

Vous pouvez désactiver SIP en suivant le processus mentionné ci-dessous:

  1. Redémarrez votre Mac en mode de récupération en redémarrant votre ordinateur et en maintenant la touche Commande + R enfoncée jusqu’à ce que le logo Apple apparaisse sur votre écran.
  2. Cliquez sur Utilitaires> Terminal.
  3. Dans la fenêtre Terminal, tapez csrutil disable et appuyez sur Entrée.
  4. Redémarrez votre Mac.