Ich versuche, etwas nach /usr/bin unter OS X El Capitan zu verschieben. Ich habe Rootless mit den folgenden Befehlen deaktiviert: "sudo nvram boot-args="rootless=0"; sudo reboot", aber ich erhalte immer wieder den gleichen Fehler:
MacBook-Air:~ Mark$ sudo cp class-dump /usr/bin
Password:
cp: /usr/bin/class-dump: Operation not permitted
MacBook-Air:~ Mark$ sudo mv class-dump /usr/bin
mv: rename class-dump to /usr/bin/class-dump: Operation not permitted
Nvm. Für alle anderen, die dieses Problem haben, müssen Sie Ihren Mac neu starten und drücken Sie ⌘+R beim Hochfahren. Dann gehen Sie in Utilities > Terminal und geben Sie die folgenden Befehle:
csrutil disable
reboot
Dies ist eine Folge des Systemintegritätsschutzes. Mehr Informationen hier.
EDIT
Wenn Sie wissen, was Sie tun, und es gewohnt sind, Linux zu benutzen, sollten Sie die oben genannte Lösung verwenden, da viele der SIP-Einschränkungen ein absolutes Ärgernis sind.
Wenn Sie jedoch ein Tüftler/Anfänger/"Poweruser" sind und nicht wissen, was Sie tun, kann dies sehr gefährlich sein und Sie sind besser dran, wenn Sie die Antwort unten verwenden.
Die korrekte Lösung ist, nach /usr/local/bin
zu kopieren oder zu installieren, nicht nach /usr/bin
. Dies ist auf System Integrity Protection (SIP) zurückzuführen. SIP macht /usr/bin
schreibgeschützt, lässt aber /usr/local
als schreibgeschützt stehen.
SIP sollte nicht, wie in der obigen Antwort angegeben, deaktiviert werden, da es eine weitere Schutzebene gegen Malware darstellt, die Root-Zugriff erlangt. Hier finden Sie eine vollständige Erklärung, was SIP tut und warum es nützlich ist.
Wie in dieser Antwort vorgeschlagen, sollte man SIP (Rootless Mode) nicht deaktivieren "Es wird nicht empfohlen, den Rootless Mode zu deaktivieren! Die beste Praxis ist es, benutzerdefinierte Dinge nur in "/usr/local" zu installieren."
Wenn Sie die Kontrolle über /usr/bin/
übernehmen wollen
müssen Sie Ihr System neu starten:
Halten Sie direkt nach dem Boot-Ton die Befehlstaste-R gedrückt, um das Wiederherstellungssystem zu starten.
Klicken Sie auf das Menü Dienstprogramme und wählen Sie Terminal
Geben Sie csrutil disable ein und drücken Sie die Eingabetaste
Klicken Sie auf das Menü und wählen Sie Neustart
Sobald Sie Ihre Änderungen bestätigt haben, müssen Sie SIP wieder aktivieren! Es trägt viel zum Schutz Ihres Systems bei. (Gleiche Schritte wie oben, aber geben Sie ein: csrutil enable)