web-dev-qa-db-fra.com

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

Je viens de mettre à jour mon Mac avec OSX 10.11 El Capitan et il ne reste plus quelques gemmes.

Le problème est survenu lorsque j’ai essayé d’exécuter des installations de différentes pierres précieuses ...

> Sudo gem install compass

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

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

Cela arrive aussi avec d'autres joyaux ...

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

139
Roy Calderon

J'ai trouvé la réponse sur les questions 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. Donc, vous aurez 2 options:

Si vous installez des gems sur _/usr/local/bin_, il n'y aura pas de problème, car rootless n'affecte pas ce chemin.

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

433
Roy Calderon

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 à l'é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.
10
Abid Ur Rehman