Hard Link und symbolischer Linkπ

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,

    nur eine Verständnisfrage:

    Egal ob ich einen Hard oder Symbolic Link setze, es werden NICHT die Daten redundant vorgehalten, oder?

    Hintergrund: Ich will meinen PI3 24/7 laufen lassen und habe ein Monitoring Tool laufen. Da die SD Karten ja nicht soviel Action mögen wird die Statistik auf eine USB Platte geschrieben. Nur das Tool greift auf ein Verzeichnis zu, das ein Hard Link auf der Karte ist. Nun habe ich "nur" einen Symbolischen Link auf das HDD Verzeichnis gemacht und alten Link (sicherheitshalber nur) umbenannt.
    Wenn ich jetzt mit den Desktop auf den Link klicke bin ich weiter im gleichen Verzeichnis (nicht im verlinkten wie bei windoof). Deshalb die Frage, denn, wenn es sich bei dem "Link" nur um eine Synchronisation handelt, habe ich genauso viele schreib/lese-Zugriffe auf der Karte wie ohne Link.

    Vielen Dank

  • Lesezugriff nutzen einen Flash-Speicher nicht ab.

    Mach dich bitte mal schlau, was der Unterschied zw. Hard- und Softlink ist.

    Links sind keine Synchronisierung, der Begriff ist anders besetzt.
    Links sind "Stellvertretereinträge" im Dateiverzeichnis, die auf Datei/Fileeinträge zeigen, insofern ist es total egal, ob du die Datei direkt oder über einen Link ansprichst (die zeitlichen Zugriffsunterschiede sind irrelevant).

    das Zen

  • Zitat

    Mach dich bitte mal schlau, was der Unterschied zw. Hard- und Softlink ist.

    Hatte ich bereits :thumbs1:

    Wenn ich das richtig verstanden habe ist ein Hard Link eine Verknüpfung die direkt auf die Datei zeigt, also wenn ich die Rechte an der Datei ändere sind die auch beim Link geändert. Wenn ich die Datei lösche ist der Link auch gelöscht.

    Beim Symbolischen Link wird eine Datei erstellt die einfach nur auf eine andere Datei weiterleitet und nicht mitbekommt, wenn die Datei gelöscht ist, halt wie bei Windoof.

    Die Frage ist, wie es halt technisch umgesetzt wird. Wenn ich mit jeder Änderung an der Zieldatei einen Schreibzugriff auf der Linkdatei habe, also auf der SD Karte, dann bringt das alles nichts.

    PS: :D ich hab hier gelesen, dass die PiDrive von WD schnell genug (< 2 sek.) da ist um von ihr zu booten. Das wird dann wohl das nächste sein :D

  • Softlink: richtig (Analogon: Wie ein Web-Link).

    HardLink: nicht ganz:
    Jede Datei hat mindestens einen Hardlink (den üblichen Verzeichniseintrag), der auf den "Bytehaufen" (Anfangsblock im Filesystem + weitere Daten) zeigt, Verzeichisse mindesten 2 ("." und "..").
    Ein weiterer Hardlink ist nix weiter als ein weiterer "Pointer" Verzeichniseintrag auf den Bytehaufen, die Anzahl der Links darauf listet "ls -l" auf (Zahl in der 2. Spalte).

    Der Bytehaufen weiß immer, wieviel Hardlinks auf ihn zeigen: Erst wenn die Anzahl der Zeiger auf ihn 0 erreicht, wird der Speicherbereich im Filesystem freigegeben.

    Ich verstehe deine Problem nicht ganz :

    Zitat

    jeder Änderung an der Zieldatei einen Schreibzugriff auf der Linkdatei habe, also auf der SD Karte, dann bringt das alles nichts

    Was willst du denn erreichen/vermeiden? Schreibzugriffe auf die Datei? :s
    "wasch mich, aber mach mich nicht nass?" :lol:

    Geht letztlich nur, wen du die Datei in eine RAM-Disk schiebst und nach Arbeitsende zurück synchronisierst... Aber wenn Strom weg, dann Daten weg...

    das Zen

  • Auch HardLink richtig, Du hast es nur schöner erklärt :thumbs1: . Genau das meinte ich.

    Was ich will sind die Schreibzugriffe auf der SD Karte reduzieren, deshalb speichert rpimonitor die Daten auf der HDD und nicht mehr auf der SD Karte. Nur der Aufruf der Daten im Webfrontend erfolgen über /usr/share/rpimonitor/stat, wobei stat ein Link auf /var/lib/rpimonitor/stat war. Nun speichert der Daemon die Daten auf /media/usbhdd/......./stat. Somit erfolgen die Schreibzugriffe nicht mehr auf der SD Karte ;) , also waschen ohne nass werden, ok nicht ganz.

    Mit kommt gerade in den Sinn, ein HardLink über verschieden Medien geht nicht, oder doch? Das würde erklären warum er sich die ganze Zeit gegen den HarLink gesträubt hat.

  • Genau: Hardlink über unterschiedliche Devices (Medien) geht nicht.

    Dafür gibt es die mount --bind Oprion des mount-Commandos.

    Die Reduzierung der Schreibzugriffe auf die SD-Karte bekommst du wirklich nur so gelöst, dass die Daten auf einem anderen Device liegen... so, wie du es ja nun schon machst..

    Schau die mal diese mount-option an... vielleicht hilft die dir weiter...
    Das OS verwendet diese Möglichkeit ebenfalls , teils recht exessiv...

    das Zen

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!