Page 1 of 1

Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 15:03
by Anonymous
Hallo,
ich stehe vor folgendem Problem:

Ein Verzeichnis, z. B. /home/user_A/public-files/ steht im Zugriff für User A.
Ein anderes Verzeichnis, z. B. /home/public/ kann aus technischen Gründen diesem User nicht zugänglich gemacht werden, auch funktionieren Soft Links (ln -s) hier nicht.

Nun die Idee: Es soll ein Script geben, welches manuell oder automatisch per Cronjob gestartet wird und folgendes erledigt (in Pseudocode):

Code: Select all

- für jede neue Datei in /home/user_A/public-files/ lege in /home/public/ einen Hard Link an (Befehl ln) auf die neue Datei
- für jeden Hard Link in /home/public/, für den keine Datei mehr in /home/user_A/public-files/ existiert, lösche den Hard Link
- Für jede Datei, die in /home/user_A/public-files/ liegt und die einen Hard Link in /home/public hat, tue nichts.
Leider fehlt mir so die rechte Idee, wie man da ran gehen könnte. Weiß jemand weiter? Danke!

CU
ap

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 18:01
by majortermi
Warum machst du nicht einfach einen Hardlink von /home/public auf /home/user_A/public-files/ ?

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 18:44
by Anonymous
MajorTermi wrote:Warum machst du nicht einfach einen Hardlink von /home/public auf /home/user_A/public-files/ ?
Weil ein "ln -d" immer die Fehlermeldung ausgibt: "Operation not permitted".

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 18:51
by majortermi
ap wrote:
MajorTermi wrote:Warum machst du nicht einfach einen Hardlink von /home/public auf /home/user_A/public-files/ ?
Weil ein "ln -d" immer die Fehlermeldung ausgibt: "Operation not permitted".
Um Hardlinks auf Verzeichnisse zu erstellen, benötigst du aus Sicherheitsgründen Root-Rechte - wenn du also als Root eingelogt bist, sollte es gehen.

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 19:22
by Anonymous
MajorTermi wrote: Um Hardlinks auf Verzeichnisse zu erstellen, benötigst du aus Sicherheitsgründen Root-Rechte - wenn du also als Root eingelogt bist, sollte es gehen.
Nein, tut es nicht. Ich war dazu natürlich als root eingeloggt.

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 20:57
by rootmaster
ext2/3 unterstützt imho den hardlink auf directories nicht !

benutz anstatt dessen

mount --bind origdir linkdir

"back to the roots"

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-18 21:11
by [tom]
ap wrote:

Code: Select all

- für jede neue Datei in /home/user_A/public-files/ lege in /home/public/ einen Hard Link an (Befehl ln) auf die neue Datei
- für jeden Hard Link in /home/public/, für den keine Datei mehr in /home/user_A/public-files/ existiert, lösche den Hard Link
- Für jede Datei, die in /home/user_A/public-files/ liegt und die einen Hard Link in /home/public hat, tue nichts.
Der 2. Fall ist nicht möglich - sonst wär es kein Hard Link. ;-)

[TOM]

EDIT: Hab vorhin wohl zu schnell gelsen. Jetzt weiß ich, was Du meinst.

Re: Automatisches Erstellen/Löschen von Hard Links

Posted: 2003-03-19 09:00
by Anonymous
rootmaster wrote: mount --bind origdir linkdir
Hei, das ist genau das, was ich suchte.
Man darf beim umounten halt nur nicht vergessen, den Parameter -l anzugeben...

THX