headcrash
Goto Top

Von vsftpd Verzeichniss per link auf andere Verzeichnisse wechseln

Hi,

ich habe derzeit folgendes Problem:

auf einem (funktionierenden) vsftp server soll es möglich sein nach Bedarf auf einzelne Dateien außerhalb des /home Verzeichnisses des ftpusers zuzugreifen.
Hierfür würde ich gerne - um das komplette kopieren der entsprechenden Datei zu vermeiden - einen Link erzeugen welcher auf die Datei zeigt die Zeitweise dem ftpuser zugänglich gemacht werden soll.

Was muß ich hierfür tun? Normalerweise dürfte das mit vsftp ja nicht gehen - und soll es ja auch nicht, aber generell müßte es doch möglich sein den vsftpd eine verlinkte Datei so zu behandeln als ob sie tatsächlich im /home verzeichniß des ftpusers liegt.

Bei ganzen Verzeichnißen würd ich das ja generell mit mount --bind machen (bitte Kommentar wenn das der falsche weg ist) - ich brauche aber noch eine Lösung für Einzeldateien.

Danke
Headcrash

Content-Key: 119396

Url: https://administrator.de/contentid/119396

Printed on: April 19, 2024 at 19:04 o'clock

Member: Listo
Listo Jun 30, 2009 at 10:24:20 (UTC)
Goto Top
Hallo Headcrash,

erstelle für die Dateien doch einen Hardlink. dann ist die Datei nur einmal vorhanden, jedoch der user hat dan zugriff auf diese Datei.
Beispiel:
Originaldatei mit den Namen Video.avi liegt im Verzeichnis /daten
Home-Verzeichnis des Users: /home/ftpuser

Dann auf der Konsole folgenden Hardlink erstellen: 'ln /daten/Video,avi /home/ftpuser/Video.avi'

Für den User hat es dan den anschein, als würde die Datei direkt in seinem Verzeichnis liegen. Und sollte er die Datei löschen, hast Du immer noch die Originaldatei.

Gruß
Listo
Member: headcrash
headcrash Jun 30, 2009 at 10:38:03 (UTC)
Goto Top
ok - ungefähr so dachte ich mir das auch - da ich momentan nicht an die Maschiene komme konnte ichs nur nicht aus ausprobieren.
Und du meinst das funktioniert auch durch die chroot Funktion von vsftp welche den nutzer in sein verzeichniß "jailed"??

Headcrash
Member: Listo
Listo Jun 30, 2009 at 11:40:55 (UTC)
Goto Top
Ja,

das klappt auch durch die chroot Umgebung.
Wichtig ist nur, dass sich beide Dateien (Original und Hardlink) auf der selben Partition liegen.


Gruß
Listo
Member: headcrash
headcrash Jun 30, 2009 at 11:48:20 (UTC)
Goto Top
ok und hier haben wir das Problem:

Hardlink in /home/ftpuser
Datei in /data

Das sind jeweils eigene Partitionen.
Gibt es da keine möglichkeit oder muß das home Verzeichniß des ftpusers auf die /data partition??

Headcrash
Member: Listo
Listo Jun 30, 2009 at 11:51:56 (UTC)
Goto Top
Wie bereits erwähnt, müssen beide Dateien auf eine Partition.
Der enorme Vorteil der Hardlinks (die nur auf der selben Partition angelegt werden können) ist, das die Datei nur einmal vorhanden ist.
Der Hardlink erstellt eine Verknüpfung auf die Inodenzahl der Datei und nicht auf den Dateinamen.
Du kannst also die Originaldatei später auch umbenennen, ohne das die Verknüpfung verloren geht.

Gruß
Listo
Member: headcrash
headcrash Jun 30, 2009 at 12:44:41 (UTC)
Goto Top
tja dann führt wohl nix daran vorbei das home verzeichniß auf die gleiche partition zu verschieben.

headcrash