Symbolischer Link löschen - Vorgang nicht erlaubt

Ich habe dummerweise mein Terminal benutzt, um einen symbolischen Link zu erstellen, indem ich Folgendes eingetippt habe:

sudo ln -s /bin/tcsh tcsh

Und jetzt muss ich es löschen. Ich habe es versucht

sudo rm tcsh

aber wenn ich mich authentifiziere, sagt es mir:

override rwxr-xr-x root/wheel restricted,compressed for tcsh?

und selbst wenn ich y eingebe und die Eingabetaste drücke, sagt es mir:

rm: tcsh: Operation not permitted.

Kann ich irgendetwas tun, um das zu beheben?

Was ist das aktuelle Verzeichnis, wenn Sie sudo rm tcshden Befehl ausgeben? Was war das aktuelle Verzeichnis, als Sie ausgeführt haben sudo ln -s /bin/tcsh tcsh?
Tut mir leid, ich hatte das nicht gesehen (völlig neu auf der Seite). Gute Frage, ich möchte sagen, dass ich unter /users/myusername war, aber wenn ich ls -l tcsh eingebe, sagt es mir, dass es nichts mit diesem Namen gibt ... gibt es eine Möglichkeit für mich, das herauszufinden?
sudo find / -name tcsh -type l 2> /dev/null
es sagt -Typ 1: unbekannter Typ
Ooops ... Entschuldigung, das ist sehr neu für mich :) Welche Art von Ausgabe soll ich bekommen?
Es gibt mir keinen Weg. Es sei denn, das kann länger als 5 Minuten dauern?
@user216334 Abhängig von der Anzahl der Dateien auf Ihrem Hauptvolume und anderen eingebundenen Volumes und Freigaben kann es viel länger dauern.
Wenn dies nicht funktioniert: Glauben Sie, dass die Aktualisierung auf Sierra helfen könnte, das zu beheben, was ich getan habe? Oder würde es es noch schlimmer machen?
@user216334 Ich empfehle eine zweite Suche mit sudo find / -name tcsh 2> /dev/null. Wenn Sie beide Ergebnisse vergleichen, können Sie Softlinks und echte tcsh-Execs unterscheiden: das echte tcsh (oder eine Kopie davon an anderer Stelle wird nicht in der ersten Ausgabe erscheinen). Ein Upgrade auf Sierra wird nicht wirklich helfen.
Höchstwahrscheinlich hast du überhaupt keine Probleme. Möglichkeit (1) Sie haben keinen Link erstellt und versucht, eine geschützte /bin/tcshDatei zu löschen. Apple hat ein System veröffentlicht, das dies verhindert, damit Sie (oder einige Malware oder fehlerhafte Software) es nicht durcheinander bringen. Möglichkeit (2) Sie haben einen Link erstellt, der keinerlei Einfluss auf irgendetwas hat. /bin/tcshUnd dann versucht, eine geschützte Datei zu löschen . Das ist alles.
Wenn Sie sich nicht sicher sind, was Sie tun, verwenden Sie absolute Pfade mit rmund andere Befehle - zumindest das, was Sie getan haben, bleibt in der Shell-History.

Antworten (1)

Es scheint, dass Sie entweder versuchen, Ihre Originaldatei /bin/tcsh oder eine andere tcsh zu entfernen, die in einen anderen Pfad kopiert wurde. Sie können /bin/tcsh nicht mit tcsh verknüpfen, wenn Sie sich im Ordner /bin befinden, da dies verboten ist.

Ein Softlink von tcsh ist normalerweise nicht durch SIP geschützt und Sie müssen danach suchen und ihn löschen. Wenn Sie es irgendwie geschafft haben, tcsh in einen anderen Pfad zu kopieren, was dann verhindert, dass eine von Ihnen verwendete Software funktioniert, müssen Sie sie möglicherweise dort löschen.

Um eine geschützte tcsh-Kopie zu entfernen , booten Sie in den Wiederherstellungsmodus, deaktivieren Sie SIP, starten Sie Ihr Hauptvolume neu und entfernen Sie den Link.

  1. Starten Sie Ihren Mac im Wiederherstellungsmodus neu, indem Sie Ihren Computer neu starten und Command+ gedrückt halten R, bis das Apple-Logo auf Ihrem Bildschirm erscheint.
  2. Klicken Sie auf Dienstprogramme > Terminal.
  3. Geben Sie im Terminalfenster ein csrutil disableund drücken Sie Enter.
  4. Starten Sie Ihren Mac neu.
  5. Entfernen Sie die tcsh-Kopie
  6. Starten Sie Ihren Mac im Wiederherstellungsmodus neu
  7. Klicken Sie auf Dienstprogramme > Terminal.
  8. Geben Sie im Terminalfenster ein csrutil enableund drücken Sie Enter.
  9. Starten Sie Ihren Mac neu.

Link: Wie deaktiviere ich den Systemintegritätsschutz (SIP) AKA „rootless“ unter OS X 10.11, El Capitan? Dies gilt auch für macOS Sierra!

Danke für die Antwort! Nur um sicherzugehen, dass ich das nicht noch mehr vermassele, als ich es bereits getan habe: Wenn ich versuche, den Link zu entfernen, sollte sudo rm tcsh funktionieren, richtig?
OK. Ich hoffe, ich missbrauche Ihre Geduld nicht, aber ich habe noch eine Frage: Um 100% sicher zu sein, dass ich den Link und nicht die Originaldatei entferne, gebe ich man rm tcsh ein? Danke danke danke.
Ich verstehe. Ich benutze auch El Capitan. Es heißt -rwxr-xr-x 1 root wheel, was meiner Meinung nach bedeutet, dass dies die eigentliche ausführbare Datei ist. Da stellt sich die Frage: Wie finde ich den Link? Ich weiß, es ist irgendwo, und es verhindert, dass eine Software, die ich verwende, funktioniert ...
Würde ein Update auf Sierra mein Problem lösen?
@techraf Du hast recht. Ich habe die Fehlerausgabe nicht überprüft: override rwxr-xr-x root/wheel limited... richtig und habe das fehlende l... nicht bemerkt! Ich bin nicht surreal - ich bin Vader und ich schicke meinen neuen VW Diesel Death Star, wenn Sie eine meiner Antworten wieder surreal nennen!
SIP arbeitet auf Verzeichnisebene. Eine Datei, die „aus“ dem SIP-geschützten Verzeichnis kopiert wird, ist nicht SIP-geschützt. Und es gibt keinen Mechanismus, der das Kopieren verbietet (" irgendwie geschafft, tcsh in einen anderen Pfad zu kopieren " ist so einfach wie cp /bin/tcsh ~- nicht einmal sudoerforderlich - "irgendwie" ist hier nicht erforderlich). Diesen Teil deiner Antwort verstehe ich immer noch nicht.