Die symbolischen Link-Berechtigungen ändern sich nicht mit chmod


12

Ich habe Zugriff auf einen entfernten Linux-Computer, auf dem jedes Mal, wenn ich eine symbolische Verknüpfung erstelle, diese standardmäßig mit den folgenden Berechtigungen erstellt wird: lrwxrwxrwx

Wenn ich versuche, die Berechtigungen des symbolischen Links (dh nicht den Pfad, auf den er verweist) zu ändern, verwenden Sie zum Beispiel:

chmod g-w my_symbolic_link

chmodläuft korrekt (es wird keine Fehlermeldung ausgegeben), aber wenn ich die Berechtigungen erneut überprüfe, sind sie immer noch gleich ( lrwxrwxrwx).

Ich warte auf die Nachricht des Systemadministrators, habe mich jedoch gefragt, ob dies normal ist oder ob es sich um eine spezielle Nachricht für die Box handelt.

Antworten:


16

Es ist normales Verhalten. Was passiert, kann je nach Betriebssystem unterschiedlich sein (Solaris wird mindestens zum Ändern der Link-Berechtigungen verwendet). Da ein Symlink jedoch keine normale Datei ist, werden die Berechtigungen für nichts verwendet. (Dateiberechtigungen sind Teil des Inodes der Datei, daher kann der Symlink sie nicht beeinflussen.)


Ich verstehe, danke. Ich möchte nur verhindern, dass jemand den symbolischen Link löscht. Soweit ich das verstehe, kann ich die Berechtigung dieses Links ohne die Hilfe des Administrators nicht ändern, richtig?
Amelio Vazquez-Reina

4
Nicht einmal mit der Hilfe des Administrators. Das Löschen von Dateien hängt von den Berechtigungen des enthaltenen Verzeichnisses ab, nicht von denen der Datei. ( rmÜberprüft die Datei speziell auf schreibgeschützt, es sei denn, Sie übergeben sie -f, da normalerweise nicht beabsichtigt wird, dass eine schreibgeschützte Datei gelöscht wird, unlink()dies ist jedoch egal. Versuchen Sie es irgendwann in Perl oder Python.)
geekosaur
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.