Nehmen wir an, Sie haben auf Ihrem funktionierenden Linux-System eine Datei, die in mehreren Verzeichnisschichten verschachtelt ist. Um einfach auf diese Datei zuzugreifen, möchten Sie eine Verknüpfung für diese Datei auf Ihrem Desktop erstellen. Es ist möglich, Symlink (auch als Softlink bekannt) zu verwenden. Es gibt auch eine andere Form von Link, die als Hardlink bekannt ist. In diesem Artikel erklären wir Ihnen die Unterschiede zwischen Soft- und Hardlinks und werfen einen Blick darauf, welchen Sie verwenden sollten.
Weiche vs. harte Links
Ein Softlink oder Symlink ist nur ein symbolischer Link. Es ist einfach ein Zeiger auf den Zieldateipfad. Einem Softlink ist es egal, ob die Datei oder der Ordner im Dateipfad wirklich existiert. Wenn die Datei oder der Ordner nicht existiert, führt dies nur zu einem defekten Symlink. Sie können den symbolischen Link bearbeiten oder löschen, und er wirkt sich nicht auf die Zieldatei aus.
Andererseits bewirkt ein Hardlink, dass der Zieldatei ein zusätzlicher Name gegeben wird. Wenn Sie den Inhalt einer Datei bearbeiten, wird auch der Inhalt der anderen Datei geändert. Kurz gesagt, ein Softlink ist nur ein Verweis auf den Zieldateipfad, während ein Hardlink ein direkter Link zu den Daten der Zieldatei ist.
Im Folgenden veranschaulichen wir, wie Soft- und Hardlinks funktionieren.
Softlinks in Aktion
Nehmen wir an, wir haben eine Datei namens „first_file.txt“, die vier Textzeilen enthält.
Wir werden einen Softlink in unserem Home-Verzeichnis erstellen.
ln -s first_file.txt ~/sl-firstfile.txt
In der GNOME-Desktopumgebung kann ein Softlink für eine Datei erstellt werden, indem Sie einfach mit der rechten Maustaste auf die Datei klicken und „Link erstellen“ auswählen. Es wird ein Softlink erstellt, dessen Name „Link to

Wenn wir versuchen, den Inhalt von „sl-firstfile.txt“ anzuzeigen, können wir feststellen, dass er mit „first_file.txt“ identisch ist.

Wenn wir uns diese beiden Dateien im Dateimanager ansehen, erscheint der Softlink als Verknüpfung zur Originaldatei. Der schwarze Pfeil im Symbol der Datei weist darauf hin.

Wenn wir versuchen, die Liste des aktuellen Verzeichnisses mit dem Befehl anzuzeigen ls -l, können Sie sehen, wohin der Softlink auf die Zieldatei zeigt. Das erste Zeichen in der Berechtigungszeichenfolge für „sl-firstfile.txt“ ist „l“, was bedeutet, dass dieser Eintrag für einen Link ist.

Löschverhalten von Softlinks
Wenn die Zieldatei gelöscht wird, ist der Softlink weiterhin vorhanden.

Es ist jedoch zu einem „hängenden“ oder „gebrochenen“ Link geworden und nutzlos.

Wenn Sie nun eine weitere Datei mit demselben Namen – „first_file.txt“ – erstellen, wird der Softlink wieder aktiv.
Notiz: Falls Sie auf Softlinks stoßen und den absoluten Pfad der Datei finden möchten, für die der Link erstellt wurde, verwenden Sie einfach die readlink Befehl wie unten gezeigt.

Die Ausgabe dieses Befehls ist der absolute Pfad der Originaldatei.
Hardlinks in Aktion
Jetzt erstellen wir einen Hardlink für dieselbe Datei in unserem Home-Verzeichnis. Dies kann mit dem folgenden Befehl erfolgen:
ln first_file.txt hl-first-file.txt
Notiz: Die Methoden zum Erstellen des Soft- und Hardlinks verwenden beide die ln Befehl. Der einzige Unterschied ist der -s Flag, das einen symbolischen Link bezeichnet.
Eine andere Möglichkeit, einen Hardlink zu erstellen, ist die Verwendung des link Befehl.
link hl-firstfile.txt hl2-firstfile.txt
Eine Überprüfung beider Dateien zeigt, dass ihr Inhalt gleich ist.


In der GUI erscheinen beide Dateien als unterschiedliche Entitäten. Es gibt keinen Hinweis auf die Existenz eines Hardlinks.

Versuchen wir, der Hardlink-Datei „hl-firstfile.txt“ eine neue Zeile hinzuzufügen.
echo "hello" >> hl-first-file.txt
Die Datenänderung kann in beiden Dateien eingesehen werden.


Wenn ein fester Link erstellt wird, ist es so, als ob zwei verschiedene Dateien existieren, deren Daten jedoch verknüpft sind. Eine Veränderung des einen spiegelt sich im anderen wider.
Schneller Tipp: Beim Erstellen von Softlinks und Hardlinks wäre es eine gute Idee, dieselbe Erweiterung wie die Datei zu verwenden, für die der Link erstellt wird.
Löschverhalten von Hardlinks
Bei Hardlinks ist das Löschen der Originaldatei oder des Hardlinks unproblematisch. Die Daten, die ursprünglich in der Datei gespeichert wurden, sind weiterhin über den Hardlink zugänglich.


Wann sind Softlinks sinnvoll?
Wir haben festgestellt, dass Softlinks als Verknüpfungen für eine Datei angezeigt werden. Wenn wir eine Datei in mehreren Verzeichnisebenen haben und sie an einem Ort für den einfachen Zugriff speichern möchten, ist es eine gute Option, einfach einen kurzen Link dafür zu erstellen.
Wann sind Hardlinks sinnvoll?
Wir haben gesehen, dass, sobald ein Hardlink für eine Datei erstellt wurde, jede Änderung an der Datei oder dem Hardlink in beiden widergespiegelt wird.
Nehmen wir an, Sie haben einen Backup-Server. Es wird ein inkrementeller Backup-Mechanismus verwendet, bei dem nur die Änderungen an Dateien/Ordnern seit dem letzten Backup widergespiegelt werden. Sie können eine feste Verbindung zwischen einer Datei auf dem Server und der entsprechenden Kopie auf dem Computer herstellen. Wenn die Sicherung durchgeführt wird, werden Änderungen an der Datei auf dem Computer automatisch in die entsprechende fest verknüpfte Datei auf dem Server übernommen, selbst wenn die Dateien eine Namensänderung erfahren.
Abschluss
Sowohl weiche als auch harte Links haben ihre eigenen Verwendungszwecke und sollten in verschiedenen Situationen verwendet werden. Wenn Sie ihre Unterschiede verstehen, können Sie beim Erstellen von Links bessere Entscheidungen treffen. Auch für Verzeichnisse können Softlinks und Hardlinks erstellt werden. Während Softlinks über Dateisysteme hinweg erstellt werden können, können Hardlinks nur innerhalb desselben Dateisystems erstellt werden.
Unterstützen Sie unsere Arbeit ❤️
Wenn Ihnen dieser Artikel gefallen hat, können Sie uns mit einem Trinkgeld unterstützen, damit wir weiterhin großartige Inhalte veröffentlichen können.


























