Ein Hardlink ist ein zusätzlicher Verzeichniseintrag, der auf denselben Datenbestand einer Datei zeigt. In Linux-Dateisystemen wie ext4 besitzt jede Datei einen Inode, der die eigentlichen Daten verwaltet. Ein Hardlink verweist direkt auf diesen Inode — es entsteht keine Kopie, sondern ein zweiter Name für dieselben Daten.

So erstellst du einen Hardlink

ln /pfad/datei.txt /pfad/link.txt

Nach dem Befehl zeigen datei.txt und link.txt auf denselben Inode. Änderungen an einer der beiden Dateien sind sofort in der anderen sichtbar. Die Befehlsübersicht steht in der chmod/chown/ln-Referenz.

Eigenschaften und Grenzen

  • Hardlinks funktionieren nur innerhalb desselben Dateisystems — nicht über Mount-Grenzen hinweg.
  • Sie sind nur für reguläre Dateien möglich, nicht für Verzeichnisse (aus Sicherheitsgründen).
  • Wird eine der Verknüpfungen gelöscht, bleiben die Daten über die andere erhalten — der Inode wird erst freigegeben, wenn der letzte Link entfernt wurde.

Hardlink vs. Symlink

Der Unterschied zum Symlink: Ein Hardlink ist ein direkter Verweis auf den Inode und überlebt das Verschieben der Datei im selben Dateisystem. Ein Symlink ist dagegen ein eigener Dateityp, der nur einen Pfad speichert — er bricht, wenn das Ziel verschoben oder umbenannt wird. Hardlinks sind damit robuster, aber weniger flexibel.

Verwandte Grundlagen: Partitionen und Mounten von Dateisystemen.