J'étais en train d'installer nodejs pour Symphony lorsque j'ai rencontré l'erreur "Opération non autorisée". Quelqu'un sait pourquoi c'est arrivé?
MacBook-Pro-de-XXX: ~ XXX $ sudo ln -s / usr / local / bin / node / usr / bin / node
Mot de passe:
ln: / usr / bin / node: opération non autorisée
Réponses:
Il s’agit du mode dit "sans racine" de la nouvelle version d’OS X. Il permet effectivement à certains répertoires du système d’être en lecture seule (même pour les administrateurs). "/ usr" est l'un de ces répertoires protégés (le seul sous-répertoire exclu de cette règle est "/ usr / local")
On peut désactiver ce mode sans racine avec les commandes suivantes:
Mais ce n'est pas recommandé! La meilleure pratique consiste à installer des éléments personnalisés dans "/ usr / local" uniquement.
Mise à jour (27-oct-15): 10.11 (El Capitan) Publication publique
Veuillez noter que la solution de contournement décrite ci-dessus ne fonctionnera plus avec la version publique d'El Capitan, car Apple a changé les choses.
Pour désactiver le mode "sans racine" (aussi appelé System Integrity Protection, "SIP"), vous devez démarrer temporairement en mode Récupération (maintenez la commande enfoncée pendant le démarrage) et utilisez la
csrutil disable
commande (oucsrutil enable
pour la réactiver) à partir du terminal. Le terminal est accessible via le menu de l'installateur qui se lance en mode de récupération.la source
/usr/texbin
, alors allons-y!Operation not permitted
Dans ma version d'El Capitan, le
/bin
répertoire n'existait pas:/usr/local/bin
Donc, le correctif était:
mkdir -p /usr/local/bin
Le
-p
drapeau créera le répertoire (et accessoirement tous les répertoires du chemin complet) s’il n’existe pas.Ensuite, vous pouvez créer des liens symboliques et copier des applications
/usr/local/bin
car ils/usr/local
ne font pas partie du mode "sans racine".la source