• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Symbolischer Link nicht löschbar machen

gelbeseiten

Newbie
Hallo zusammen,

ich habe da mal ein Problem mit einem symbolischen Link.
Ich gebe über Samba verschiedene Ordner frei. Die verschiedenen Abteilungen sollen aber auch auf einen gemeinsamen Ordner Zugriff haben, wobei sie aber nicht die anderen Ordner sehen sollen. Sprich ich erstelle einen symbolischen Link auf einen Ordner. Diese funktioniert auch wunderbar. ich kann darin browsen, Dateien ablegen, nur, wenn ich den symbolischen Link vor dem Löschen schützen möchte, geht das nicht. Sprich, wenn ich den Ordner über Samba sehe, kann ich ihn (den symbolischen Link) auch löschen. Ist das so gewollt?

/directory/gemeinsamer_ordner
/directory/abteilung/"symbolischer link" auf gemeinsermer_ordner

ln -s /directory/gemeinsamer_ordner /directory/abteilung/


Besten Dank

Volkmar
 

toter

Newbie
tach gesacht...

der symbolische link bekommt/hat die rechte die du ihm gibst. Wenn dieser also als "ordner" in einer freigabe auftaucht und der nutzer dieser freigabe die rechte zum loeschen hat, dann kann dieser nutzer natuerlich diesen "ordner"/link auch koeschen. Wenn der nutzer nur leserechte hat kann er natuerlich nichts loeschen.

mfg toter
 
OP
gelbeseiten

gelbeseiten

Newbie
Hi toter,

danke für die Antwor und sorry für meine späte Nachricht.
Leider muss ich Dir etwas widersprechen, es geht leider nicht. Du kannst einen symbolischen Link nicht "unlöschbar" machen. Hatte noch einen Link gefunden.
Hast Du es mal getestet?
Ich habe alle Berechtigungen versucht, aber, nix. Teste es selber mal.
Gruß

Volkmar
 
A

Anonymous

Gast
Dazu muss man verstehen wie die Zugriffsrechte auf Dateien und Verzeichnisse überhaupt funktionieren und was ein Symbolischer Link überhaupt ist.
Grundlagen dazu gibt es zB http://www.linupedia.org/opensuse/Zugriffsrechte

Ein Symbolischer Link ist nichts weiter wie eine Weiterleitung auf den Namen einer Datei. Sie selbst hat keine eigenen Zugriffsrechte sondern bei der Symbolischen Weiterleitung ist alles offen, und die Zugriffsrechte auf die verlinkte Datei werden durch die Rechter der verlinkte Datei selbst geregelt. Ein solcher Link hat mit dem Ziel auch überhaupt nichts zu tun, und kann ohne Warnung oder Fehlermeldung verweisen, wenn die verlinkte Datei nicht (mehr) exitiert.

Um einen Symbolischen Link oder überhaupt eine Datei erstellen oder löschen zu können sind nicht die Rechte der Datei selbst, (Symbolischer Link hat sowieso keine) zuständig, sondern das Schreibrecht im beheimateten Verzeichnis. Hat jemand die Schreibrechte in dem Verzeichnis, dann kann er dort zB Symbolische Links anlegen oder schon bestehende einfach Löschen und dann aber auch wieder anlegen und auf einen anderen Dateinamen zeigen lassen. Hat er das Schreibrecht dort im Verzeichnis nicht, kann er es nicht, aber er kann auch keine andere Datei oder Verzeichnis in diesem Verzeichnis anlegen oder Löschen. Ändern kann er Datein dort schon, dazu ist das Schreibrecht der Dateien ja zuständig. Er könnte also den Inhalt einer Datei (aus)leeren oder zumüllen, aber die Datei selbst nicht löschen.
Dein Zugriffsproblem liegt also im Verzeichnis. Soll ein Symbolischer Link nicht löschbar sein, muss das Schreibrecht im Verzeichnis entsprechend beschnitten sein, im Normalfall mit der Nebenwirkung das dann auch das Anlegen von Datein damit beschnitten ist.

Alles weitere ist jetzt etwas Filesystemabhängiger. Ich gehe einfach mal von ext3 aus, sollte aber in den meisten Linuxgebräuchlichen Filesystemen funktieren.
Es gibt ein spezielles Zugriffsrecht, welches angenau an diesem Problem ansetzt. http://www.linupedia.org/opensuse/Zugriffsrechte#Sticky_Bit

In dem Verzeichnis in dem sich so ein solcher zu schützender Link befindet, müsste also das Sticky Bit wirken. Das verhindert das jemand anderes als der Besitzer der Datei, die Datei löschen kann. Legt jetzt zB Root dort einen Link an, dann können die anderen User zwar auch dort Dateien und Verzeichnisse anlegen und ändern, aber nur ihre eigenen Dateien Löschen und damit nicht den Link von root. Diese Bit wirkt allerdings rekursiv auf den Verzeichnisbaum ab dem Verzeichnis in dem es gesetzt worden ist. Es müsste also wenn weiter unten im Verzeichnisbaum hinderlich ist, dort wieder aufgehoben werden. Da man einen Symbolischen Link auch nicht auf etwas anderes Umbiegen kann ohne ihn vorher zu entfernen, (nichtmal mit force) sollte dieser Schutz auch vollkommen ausreichend sein.

Kein aufgesetzter Zugriffsmachnismus zB durch Netzwerksfreigaben oÄ wird sich darüber hinwegsetzen können.

robi
 
Oben