Je suis passé à El Capitan hier et tout allait bien jusqu'à récemment, quand j'ai remarqué que je ne pouvais rien écrire (avec Sudo ofc) sur/usr/bin car j'essayais d'installer phpbrew.
Qu'est-ce qui pourrait causer cela et comment le résoudre?
Depuis OSX 10.11, Apple renforce le système de sécurité. Appelé System Integrity Protection, Apple se verrouille:
/System
/sbin
/usr (with the exception of /usr/local subdirectory)
Pour désactiver cette fonction de sécurité, vous devez redémarrer votre ordinateur et conserver CMD+R
au démarrage pour démarrer en mode de récupération OS X.
Alors OS X Utilities > Terminal
Tapez la commande csrutil disable; reboot
Votre ordinateur va redémarrer. Vous verrez un message de confirmation concernant la désactivation.
Pour vérifier le statut du type de CRS csrutil status
Comme mentionné par Ragnar , le répertoire /usr
est verrouillé par le système, à l'exception de /usr/local
. Ensuite, si votre scénario le permet, je vous recommande d’ajouter le lien symbolique à /usr/local/bin
. Si vous n'avez pas d'exigence stricte d'utiliser /usr/bin
, c'est un moyen de contourner l'erreur "Opération non autorisée".
Vous pouvez vérifier si un fichier ou un répertoire particulier est limité par la protection de l'intégrité du système (SIP)/Rootless de OSX en répertoriant les indicateurs de fichier à l'aide de l'option -O
de ls (par exemple, pour voir quels répertoires sont restreints):
ls -Ol /
Les répertoires ou fichiers contrôlés par SIP s'affichent sous la forme "restreint".
Il y a tous les détails dans les réponses à cette question à propos de SIP/rootless.