www.wikidata.de-de.nina.az
Harter Link auch harte Verknupfung englisch hard link im deutschen Fachjargon auch Hardlink ist ein Begriff aus dem Bereich der Dateisysteme in der Informatik In modernen Dateisystemen gibt es keine feste Zuordnung zwischen Dateinamen und der eigentlichen Datei Vielmehr wird beim Erstellen der Datei beispielsweise auf einer Festplatte zunachst bloss eine Nummer als Referenz auf die Datei benutzt je nach Betriebssystem Inode oder File Record Nummer genannt und in einem zweiten Schritt ein Verzeichniseintrag mit dem Dateinamen erzeugt der auf diese Nummer verweist Im eigentlichen Sinne bezeichnet harter Link diese Verknupfung von Dateiname und Datei letztere reprasentiert durch Inode oder File Record Nummer Interessant dabei ist und das ist meistens gemeint wenn der Begriff harter Link benutzt wird dass mehrere harte Links auf dieselbe Datei verweisen konnen also mehrere Verzeichniseintrage bzw Dateinamen fur ein und dieselbe Datei existieren konnen Inhaltsverzeichnis 1 Einfuhrung 2 Aufbau Unix 3 Anwendungsbeispiele 3 1 Unix 3 2 Windows 3 3 Anmerkungen 4 Siehe auch 5 EinzelnachweiseEinfuhrung BearbeitenDen ersten harten Link erzeugt das Betriebssystem genauer der Dateisystemhandler automatisch beim Erstellen der Datei da ohne ihn gar kein Dateiname existieren wurde und somit die Anwendungsprogramme gar keinen Zugriff auf die Datei hatten Mit der Erstellung eines harten Links auf eine bereits existierende Datei wird ein weiterer Name zuweilen in einem anderen Verzeichnis zu der Datei etabliert anschliessend bilden beide Namen einen gleichwertigen Zugang zu der Datei dabei ist nicht ohne Weiteres zu sagen welcher Name zuerst da war Das ist ein Gegensatz zu Verfahren mit ahnlicher Zielsetzung wie z B symbolischen Verknupfungen auch Soft Links genannt bei denen es eine eigentliche Datei und einen Link auf dieselbe gibt Eine Datei oder ein Verzeichnis kann mit diesem Mechanismus an verschiedenen Orten in der Verzeichnisstruktur gleichzeitig erscheinen Zu einem weiteren harten Link gehort nur ein weiterer Name andere Metadaten die zur Datei gehoren wie etwa Anderungsdatum oder Zugriffsrechte existieren nur einmal und werden im Inode oder File Record gespeichert 1 2 3 Harte Links konnen sowohl in Unix und Linux Systemen also auch macOS als auch im Dateisystem NTFS unter Windows erstellt werden Im Allgemeinen spricht man von harten Links wenn mehrere Eintrage auf denselben Inode oder File Record verweisen dessen Nummer eine Datei oder ein Verzeichnis dateisystemintern identifiziert Mehrere harte Links auf denselben Inode oder File Record sind gleichwertig und konnen in beliebiger Reihenfolge umbenannt oder geloscht werden Beim Loschen wird uberpruft ob gerade der letzte verbleibende harte Link geloscht wird die eigentliche Datei wird erst dann geloscht Abgesehen von den Verzeichniseintragen fur das aktuelle und das ubergeordnete Verzeichnis und verweisen harte Links fast immer auf Dateien Da Inode oder File Record Nummern innerhalb von Partitionen verwaltet werden sind harte Links nur innerhalb derselben Partition moglich Mochte man Dateien auf verschiedenen Partitionen verlinken so muss auf symbolische Links zuruckgegriffen werden Aufbau Unix BearbeitenJeder Verzeichniseintrag besteht aus dem Dateinamen und der zugeordneten Inode Nummer Zu jedem Inode kann es nahezu beliebig viele Dateipfade Verzeichniseintrage geben also auch unterschiedliche Namen fur dieselbe Datei Ein Vorteil dieses Konzepts zeigt sich beim Entfernen von Links Es gibt bei Unixsystemen streng genommen keine Operation zum Loschen einer Datei sondern nur eine unlink Operation zum Loschen von Links Im Inode einer Datei wird die aktuelle Anzahl der Links gespeichert Erst wenn der letzte Link zu einer Datei geloscht ist der Zahler im Inode also den Wert Null hat wird die Datei selbst Inode und Datencluster zur Wiederbeschreibung freigegeben und damit logisch geloscht Bemerkenswert ist das Verhalten harter Links wenn ein Benutzer eine Datei zu loschen versucht die ein oder mehrere Programme noch geoffnet halten Da das Offnen einer Datei den Zahler um eins erhoht fuhrt das versuchte Loschen zwar zum Verschwinden der Datei genauer des geloschten Links aus dem Verzeichnis Die Datei existiert jedoch noch und kann vom Programm benutzt werden solange es die Datei nicht schliesst Erst nachdem alle Programme die Datei geschlossen haben wird auch der betreffende Festplattenspeicher freigegeben Um Konsistenzprobleme zu vermeiden durfen gewohnliche Benutzer fur Verzeichnisse keine zusatzlichen harten Links erstellen Die Links werden von einem Verzeichnis Inode automatisch verwaltet und der eindeutige eigentliche Verzeichnisname taucht als Link genau einmal im ubergeordneten Verzeichnis auf Daneben gibt es in jedem Verzeichnis immer folgende zwei Links Einen Link namens der das Verzeichnis selbst darstellt und folglich darauf verlinkt sowie das ubergeordnete Verzeichnis durch einen Link namens reprasentiert Anwendungsbeispiele BearbeitenUnix Bearbeiten Fur sonstige Dateien lassen sich mit dem Befehl a href Ln Unix html title Ln Unix ln a jederzeit zusatzliche Links erstellen z B ein Link home wiki2 same picture zur vorhandenen Datei home wiki1 picture ln home wiki1 picture home wiki2 same pictureAndere Moglichkeiten zum Erstellen von Hard Links sind cp link und rsync link dest Mit dem Befehl stat lasst sich ermitteln wie viele harte Links auf eine Datei zeigen Der Befehl ls l zeigt auf vielen Unix Systemen in der zweiten Spalte die Anzahl harter Links der zugehorigen Datei Windows Bearbeiten Harte Links werden auf Partitionen mit dem NTFS Dateisystem unterstutzt nicht jedoch auf FAT oder ReFS formatierten Partitionen Je Datei sind bis zu 1023 2 10 1 displaystyle 2 10 1 nbsp zusatzliche harte Links moglich Der erste feste harte Verweis oder hard link zeigt immer auf die bereits angelegte und damit erreichbare zugreifbare Datei 4 Zur Erstellung eignen sich z B das u a in Windows XP enthaltene Werkzeug span fsutil span u a mit der Befehlserweiterung span hardlink create span der ab Vista enthaltene Befehl span mklink span mit dem Parameter H siehe folgende Beispiele oder Anwendungen anderer Hersteller Um mit dem Microsoft Werkzeug fsutil den harten Link Neue Linkdatei txt zu erzeugen der auch auf die Datei Zieldatei txt verweist ist folgender Befehl einzugeben C gt fsutil hardlink create Neue Linkdatei txt Zieldatei txt oder ab Vista C gt mklink H Neue Linkdatei txt Zieldatei txt Anders als unter Unix und Unixahnlichen kann kein harter Link geloscht werden solange die betreffende Datei von einer Anwendung geoffnet d h ein Filehandle darauf gesetzt ist Anmerkungen Bearbeiten Ein typischer Arbeitsgang an einem Computer ist es eine Datei zu offnen zu andern und zu speichern beispielsweise einen Brief in einer Textverarbeitung zu andern und dann zu sichern Je nachdem wie die Anwendungssoftware hier die Textverarbeitung intern ausgelegt ist wird entweder der alte Inhalt in der geoffneten Datei mit dem geanderten Inhalt uberschrieben oder es wird eine neue Datei mit temporarem Namen angelegt die alte geloscht und anschliessend die neue Datei mit dem alten Namen versehen Entsprechend der dargelegten Eigenschaften von harten Links wird beim erstgenannten Verfahren der neue Inhalt bei allen Links der Datei erscheinen beim zweiten Verfahren hingegen wird durch den Loschvorgang lediglich einer der Links aufgehoben und der neue Inhalt erscheint in einer neuen Datei ohne weitere harte Links Die anderen Links der ursprunglichen Datei verweisen nach wie vor auf ebenjene ursprungliche Datei mit dem alten Inhalt es sind nun also beide Versionsstande auf dem Datentrager vorhanden ein Effekt der gewollt sein kann oder auch nicht Harte Links werden bei der Datensicherung backup durch Kopien der verlinkten Dateien ersetzt sofern das Backup Programm diesen Fall nicht besonders behandelt Fur mehrfache Verweise auf eine Datei stehen auch symbolische Links Softlinks zur Verfugung Eine verbreitete Anwendung von harten Links ist die Erstellung von Schnappschussen Dabei werden statt einer vollstandigen Kopie aller Dateien complete backup nur neue oder geanderte Dateien gesichert incremental backup und altere Dateien als harte Links auf bereits vormals gesicherte Dateien backup set reprasentiert Da harte Links kaum Speicherplatz benotigen wird gegenuber einer vollstandigen Sicherung entsprechend signifikant wenig Speicher benotigt trotzdem lassen sich alle Veranderungen an einem Verzeichnisbaum rekonstruieren 5 6 Das Versionsverwaltungssystem Git benutzt harte Links beim Klonen von lokalen Repositories Da Git in der Regel die gesamte Historie eines Projekts lokal verfugbar halt lasst sich auf diese Weise Speicherplatz sparen 7 Unter NTFS erfullen Abzweigungspunkte junctions eine ahnliche Funktion wie harte Links wenn Verzeichnisse auf verschiedenen Partitionen oder Festplatten desselben Computers verlinkt werden sollen Abzweigungspunkte erlauben jedoch keine Verlinkung von Dateinamen oder Verlinkungen uber Netzlaufwerke Siehe auch BearbeitenSymbolische Verknupfung DateiverknupfungEinzelnachweise Bearbeiten Vivek Gite Understanding UNIX Linux filesystem Inodes 10 November 2005 abgerufen am 15 Mai 2016 Raymond Chen Why is the file size reported incorrectly for files that are still being written to MSDN 26 Dezember 2011 abgerufen am 15 Mai 2016 joscon The Windows Servicing Guy How hard links work Microsoft TechNet 6 Januar 2011 abgerufen am 15 Mai 2016 directory of hardlinks on NTFS appears to be consuming more space than it should Stack Overflow abgerufen am 18 Mai 2021 englisch Mike Rubel Easy Automated Snapshot Style Backups with Linux and Rsync 4 Januar 2004 abgerufen am 15 Mai 2016 Rob Flickenger Linux Server Hacks O Reilly Media 2003 ISBN 0 596 00461 3 Hack 42 Automated Snapshot Style Incremental Backups with rsync S 242 oreilly com git clone 1 Manual Page 6 Juni 2015 abgerufen am 15 Mai 2016 Abgerufen von https de wikipedia org w index php title Harter Link amp oldid 234782070