Wie ändert ein Programm /usr, aber ich kann es nicht einmal mit Administratorrechten?

Ich habe gerade die neueste Xquartz- und FSL-Imaging-Software installiert. Mir ist aufgefallen, dass es einen neuen symbolischen Link in /usr (zB /usr/X11R6) zu /opt/X11 gibt. Mein Verständnis war, dass nur Apple-Software zertifiziert/signiert werden kann, um /usr unter dem neuen SIP in El Capitan zu ändern. Ich bin sicherlich nicht in der Lage, /usr direkt mit sudo zu ändern, sodass SIP aktiviert ist.

Es ist definitiv neu - ich hatte eine frühere xquartz-Installation mit einem /usr/X11-Symlink, der vor dem El Capitan-Upgrade erstellt wurde und an Ort und Stelle blieb. FSL benötigt jedoch einen /usr/X11R6-Symlink, den ich wegen SIP vergeblich versucht habe, manuell zu erstellen.

Nach dem Upgrade auf das neueste Xquartz habe ich jetzt sowohl /usr/X11- als auch /usr/X11R6-Symlinks. Es ist kein "Problem", aber ich bin nicht klar, wie es dorthin gekommen ist.

Kann jemand erklären, wie das funktioniert?

Sind Sie sicher, dass der Symlink neu ist? Kann ein Überbleibsel einer früheren Installation sein
Ich habe die gleichen Symlinks hier (auch mit einem Datum, nachdem ich auf 10.11 aktualisiert habe) und habe gerade überprüft, dass der Zeitstempel des Symlinks sudo touch -h /usr/X11auch bei aktivem SIP geändert werden kann. Ich vermute also immer noch, dass der X11R6 vorher da war, haben Sie ein TM- (oder anderes) Backup von vor der Installation von Xquartz?
Uh, aber es hat nicht funktioniert, für /usr/X11R6das als geschützt angezeigt wird in ll -O /usr. Aber irgendwie wurde es trotzdem von Xquartz aktualisiert/berührt. Geheimnisvoll...

Antworten (2)

SIP verhindert, dass alles (einschließlich des Kernels) die angegebenen Verzeichnisse ändert. Deaktivieren Sie es, wenn Sie Änderungen vornehmen möchten /usr.

Die Frage ist, wie hat Xquartz mit Rootless den Symlink erstellt?
@AlanShutko Apple hat möglicherweise Paketen erlaubt, Dinge zu ändern (vielleicht?).

Es ist möglich, SIP-geschützte Dateien und Verzeichnisse über ein Installationspaket hinzuzufügen, zu entfernen oder zu ändern, das von Apples eigener Zertifizierungsstelle signiert ist. Dadurch kann Apple Änderungen an SIP-geschützten Teilen des Betriebssystems vornehmen, ohne dass die bestehenden SIP-Schutzmaßnahmen geändert werden müssen.

Normalerweise würde dies Entwickler-ID-Zertifikate ausschließen, aber ich wette, Apple hat eine Ausnahme für dieses spezielle Entwickler-ID-Zertifikat gemacht.

Geben Sie hier die Bildbeschreibung ein