Ich versuche auf OS X El Capitan etwas nach/usr/bin zu verschieben. Ich habe rootless mit den folgenden Befehlen deaktiviert: Sudo nvram boot-args="rootless=0"; Sudo reboot
, erhalte aber weiterhin 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 Personen, die dieses Problem haben, müssen Sie Ihren Mac neu starten und beim Booten ⌘ + R drücken. Gehen Sie dann zu Utilities> Terminal und geben Sie die folgenden Befehle ein:
csrutil disable
reboot
Dies ist ein Ergebnis des Systemintegritätsschutzes. Mehr Infos hier .
EDIT
Wenn Sie wissen, was Sie tun und an das Ausführen von Linux gewöhnt sind, sollten Sie die oben genannte Lösung verwenden, da viele der Einschränkungen von SIP ein absoluter Schmerz sind.
Wenn Sie jedoch ein Tinkerer/Noob/"Poweruser" sind und nicht wissen, was Sie tun, kann dies sehr gefährlich sein und Sie sollten die unten stehende Antwort besser verwenden.
Die richtige Lösung ist das Kopieren oder Installieren in /usr/local/bin
und nicht /usr/bin
. Dies liegt an Systemintegritätsschutz (SIP). SIP macht /usr/bin
schreibgeschützt, lässt jedoch /usr/local
als Lese- und Schreibzugriff zurück.
SIP sollte nicht wie in der obigen Antwort angegeben deaktiviert werden, da dadurch eine weitere Schutzschicht gegen Malware hinzugefügt wird, die Root-Zugriff erhält. Here ist eine vollständige Erklärung, was SIP macht und warum es nützlich ist.
Wie in diese Antwort vorgeschlagen sollte man SIP nicht deaktivieren (rootless-Modus) "Es wird nicht empfohlen, den rootless-Modus zu deaktivieren! Die beste Vorgehensweise ist die Installation von benutzerdefinierten Dateien nur in"/usr/local " . "
Wenn Sie /usr/bin/
übernehmen möchten
Sie müssen Ihr System neu starten:
Halten Sie nach dem Startsound 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
Wenn Sie Ihre Änderungen bestätigt haben, müssen Sie SIP erneut aktivieren! Es tut viel, um Ihr System zu schützen. (Dieselben Schritte wie oben, außer Typ: csrutil enable)
Wenn Ihr Befehl nach "csrutil disabled" immer noch nicht funktioniert, versuchen Sie es mit "Sudo" im Terminal, zum Beispiel:
Sudo mv geckodriver usr/local/bin
Und es sollte funktionieren.