Layer 8Ehrlicher Tech-Support
BetriebssystemSchweregrad: LästigOperation not permitted

Operation not permitted am Mac trotz sudo

Der Mac verweigert eine Änderung im Systemordner, auch als Administrator? Das ist der Systemintegritätsschutz — und er lässt sich nicht wegtricksen.

Aufwand:
ca. 20 Min.
Voraussetzung:
Terminal, Benutzerkonto mit Administrator-Rechten
Gilt für:
macOS 10.11 und neuer

Das Symptom

Eine Anleitung aus dem Netz sagt, man müsse nur schnell eine Datei im Systemordner ersetzen, einen Ordner umbenennen oder ein Startobjekt an Ort und Stelle legen. Das Terminal antwortet mit einem knappen Operation not permitted. Also noch einmal mit sudo, Kennwort eingetippt — und wieder dieselbe Zeile. Der Finder zeigt beim Verschieben stattdessen ein Schlosssymbol oder verweigert die Aktion ganz. Das Konto ist Administrator, die Rechte an der Datei sehen völlig normal aus, und trotzdem bewegt sich nichts.

Die „Layer 8“-Wahrheit

Der Reflex, es mit sudo noch einmal zu probieren, ist verständlich und hier komplett wirkungslos. Klassische Unix-Rechte sind das, was Apple diskretionär nennt: Wer root ist, kann sie ändern und sich damit selbst erlauben, was ihm gerade fehlt. Der Systemintegritätsschutz gehört in die andere Kategorie. Er ist eine verpflichtende Zugriffskontrolle im Kernel, und Apple schreibt dazu ausdrücklich, die Richtlinie werde auf jeden Prozess im System angewendet — gleichgültig, ob er in einer Sandbox oder mit Administratorrechten läuft. Es gibt also nicht den einen Zauberbefehl, mit dem man doch noch hineinkommt. Genau das ist der Zweck: Schadsoftware, die sich Administratorrechte erschlichen hat, soll das Betriebssystem trotzdem nicht umbauen können.

Was SIP tut, ist dabei erstaunlich schlicht. Apple beschreibt es als Schreibschutz auf bestimmte kritische Orte im Dateisystem, aktiv seit macOS 10.11 und standardmäßig eingeschaltet. Der Systembereich gehört dem System, Punkt. Dein Benutzerordner, deine Programme, /usr/local — alles unberührt. Wer also gegen diese Wand läuft, versucht in aller Regel etwas, das seit einem knappen Jahrzehnt nicht mehr der vorgesehene Weg ist. Die ehrliche Frage lautet deshalb nicht „wie schalte ich das ab“, sondern „warum will meine Anleitung überhaupt in den Systemordner schreiben“. Meistens ist die Antwort: weil sie aus einer Zeit stammt, in der das noch ging.

Abschalten geht, und Apple verschweigt das auch nicht — aber die Hürden sind Absicht. Es funktioniert nur aus recoveryOS heraus, mit Werkzeugen wie csrutil, und auf Apple Silicon muss man dabei aktiv bestätigen, den Mac in den Zustand Permissive Security zu bringen, den Apple als deutlich unsicherer beschreibt. Selbst der Weg nach recoveryOS ist auf diesen Geräten an das Halten der Einschalttaste gebunden, damit nur ein Mensch am Gerät ihn auslösen kann. Wer das alles auf sich nimmt, sollte danach denselben Weg noch einmal gehen und den Schutz wieder anschalten. Dauerhaft deaktivierter Systemintegritätsschutz ist keine Konfiguration, sondern ein vergessener Notausgang, der offen steht.

Die echte, verifizierte Lösung

1000 % faktenbasiert. Jeder Befehl ist real, jeder Pfad existiert. Schritt für Schritt:

  1. 1.

    Feststellen, ob SIP überhaupt der Grund ist

    Zuerst nachsehen, ob der Schutz aktiv ist. Der Befehl ist rein lesend und lässt sich gefahrlos in jedem Terminal ausführen. Steht dort, dass der Schutz aktiviert ist, und liegt der Zielpfad im Systembereich, ist die Diagnose fertig.

    csrutil status
    
  2. 2.

    Den Pfad prüfen, an dem es klemmt

    SIP schützt Systemorte, nicht deinen Kram. Liegt der Pfad im Benutzerordner oder unter /usr/local und wird trotzdem abgewiesen, ist es kein SIP, sondern ein gewöhnliches Rechteproblem — oder eine fehlende Freigabe im Datenschutzbereich der Systemeinstellungen, etwa für den Zugriff auf Schreibtisch, Dokumente oder ein externes Volume. Eigentümer und Rechte lassen sich lesend anzeigen.

    ls -ldO /Pfad/zur/Datei
    
  3. 3.

    Den legitimen Weg statt des Systemordners nehmen

    In neun von zehn Fällen ist die Anleitung, die zum Fehler geführt hat, schlicht veraltet. Startobjekte gehören nicht mehr in Systemverzeichnisse, eigene Programme nicht nach /System, Hilfswerkzeuge gehören nach /usr/local/bin oder in den Präfix einer Paketverwaltung. Wer den vorgesehenen Ort benutzt, braucht SIP nie anzufassen. Diese Prüfung lohnt sich, bevor irgendjemand über das Abschalten nachdenkt.

  4. 4.

    Notfalls SIP bewusst und befristet abschalten

    Achtung: Das senkt das Schutzniveau des gesamten Systems, bis es wieder eingeschaltet wird. Der Vorgang ist im laufenden macOS nicht möglich; Apple sieht dafür recoveryOS vor und dort Werkzeuge wie csrutil. Auf Apple Silicon dokumentiert Apple den Einstieg in recoveryOS über das Halten der Einschalttaste — ausdrücklich damit nur ein Mensch mit physischem Zugriff und keine Schadsoftware das auslösen kann. Bei Intel-Macs weicht der Einstieg je nach Modell und Version ab; ihn nachschlagen statt raten. Im Terminal von recoveryOS gilt dann.

    csrutil disable
    
  5. 5.

    Den Eingriff erledigen und SIP sofort wieder einschalten

    Nach dem Neustart die eine Änderung machen, für die der Schutz im Weg stand — und danach ohne Umweg zurück in recoveryOS und den Schutz wiederherstellen. Ein Mac, der monatelang ohne SIP läuft, weil vor einem Jahr einmal ein Treiber zickte, ist der eigentliche Schaden.

    csrutil enable
    
  6. 6.

    Bei verwalteten Geräten vorher fragen

    Auf Dienstgeräten ist das Absenken der Sicherheitsstufe in der Regel weder erwünscht noch folgenlos: Verwaltungssysteme prüfen den Zustand und melden ihn. Wer den Schutz auf eigene Faust abschaltet, produziert einen Compliance-Vorfall statt einer Lösung. Ein kurzer Anruf bei der IT kostet weniger Zeit als das Gespräch danach.

Häufige Fragen (FAQ)

?Warum hilft sudo nicht? Ich bin doch Administrator.

Weil der Systemintegritätsschutz keine klassische Dateirechte-Frage ist. Apple beschreibt SIP als verpflichtende Zugriffskontrolle: Die Richtlinie greife bei jedem Prozess auf dem System, „regardless of whether that process is running sandboxed or with administrative privileges“. Normale Unix-Rechte sind freiwillig — wer root ist, darf sie umschreiben. SIP ist genau das nicht: Der Kernel weist die Änderung ab, unabhängig davon, wer fragt. Administrator zu sein ändert daran nichts, und das ist der Sinn der Sache.

?Was schützt SIP eigentlich konkret?

Apple formuliert es so: SIP setze Komponenten an bestimmten kritischen Stellen des Dateisystems auf schreibgeschützt, um zu verhindern, dass Schadcode sie verändert. In der Praxis sind das die Systemverzeichnisse des Betriebssystems und die von Apple mitgelieferten Programme. Alles, was du selbst installierst und verwaltest — dein Benutzerordner, Programme von Drittanbietern, /usr/local — liegt außerhalb dieses Schutzes. Wer dort schreiben will und trotzdem abgewiesen wird, hat kein SIP-Problem, sondern ein gewöhnliches Rechteproblem oder eine fehlende Datenschutzfreigabe.

?Kann ich SIP nicht einfach abschalten?

Technisch ja, im laufenden System nein. Apple beschreibt den Weg ausdrücklich über recoveryOS und Kommandozeilenwerkzeuge dort, „such as csrutil (to turn off SIP)“. Auf Macs mit Apple Silicon kommt hinzu, dass man dafür ausdrücklich bestätigen muss, das System in den Zustand Permissive Security zu versetzen — Apple nennt diesen Zustand einen, in dem der Kernel deutlich leichter zu kompromittieren ist. Es ist also kein Schalter für den Alltag, sondern eine bewusste Absenkung des Schutzniveaus, die man danach wieder rückgängig machen sollte.

Belege

Diese Seite ist gegen die folgenden Primärquellen geprüft – Hersteller, Standard oder Gesetzestext. Wer es nicht glaubt, muss es nicht: Da steht, wo es nachzulesen ist.

  1. [1]
    System Integrity Protection (Apple Platform Security)

    support.apple.com · abgerufen am

Zuletzt geprüft am . Dokumentation altert – ein Datum daneben ist der einzige ehrliche Umgang damit.

Verwandte Fehler

OSLästigPermission denied

Permission denied, obwohl man root ist

Selbst als root verweigert das System den Zugriff. Meist ist das Dateisystem schreibgeschützt eingehängt oder die Datei ist unveränderlich.

OSLästiguser is not in the sudoers file

user is not in the sudoers file

sudo verweigert den Dienst: Der Benutzer steht nicht in der sudoers-Datei. Ohne Mitgliedschaft in der richtigen Gruppe gibt es keine Root-Rechte.