Uaktualniłem do El Capitan wczoraj i wszystko było dobrze do niedawna, kiedy zauważyłem, że nie mogę napisać niczego (z sudo ofc) na / usr / bin, gdy próbowałem zainstalować phpbrew.
Co może być tego przyczyną i jak go rozwiązać?
macos
osx-el-capitan
sushil
źródło
źródło
Odpowiedzi:
Od OSX 10.11 Apple wzmocniło system bezpieczeństwa. Firma Apple, zwana ochroną integralności systemu , blokuje się:
Aby wyłączyć tę funkcję bezpieczeństwa, musisz ponownie uruchomić komputer i przytrzymać
CMD+R
przy starcie rozruchu w trybie odzyskiwania OS X.Następnie
OS X Utilities > Terminal
Wpisz polecenie
csrutil disable; reboot
Twój komputer uruchomi się ponownie. Zobaczysz komunikat potwierdzający dezaktywację.
Aby zweryfikować status typu CRS
csrutil status
źródło
/Users/Rob$ csrutil status System Integrity Protection status: disabled. /Users/Rob$ touch /usr/bin/yes touch: /usr/bin/yes: Permission denied
sudo
.csrutil enable
(w trybie odzyskiwania).Jak wspomniano Ragnar ,
/usr
katalog jest zablokowany przez system, z wyjątkiem/usr/local
. Następnie, jeśli pozwala na to Twój scenariusz, polecam dodanie linku symbolicznego/usr/local/bin
. Jeśli nie masz ścisłych wymagań dotyczących używania/usr/bin
, jest to jeden ze sposobów obejścia błędu „Operacja niedozwolona”.źródło
Można sprawdzić, czy określony plik lub katalog jest ograniczony przez System Integrity Protection (SIP) OSX / Rootless, wyświetlając flagi plików przy użyciu
-O
opcji ls (np. Aby zobaczyć, które katalogi w / są ograniczone):Katalogi lub pliki kontrolowane przez SIP są oznaczone jako „ograniczone”.
Pełne informacje znajdują się w odpowiedziach na to pytanie dotyczące SIP / rootless.
źródło