Junior — Middle
Was ist der Unterschied zwischen einem Hard Link und einem symbolischen Link in Linux und was sind ihre Besonderheiten bei der Verwendung?
sobes.tech KI
Antwort von AI
Ein harter Link (hard link) und ein symbolischer Link (symlink) sind zwei Möglichkeiten, in Linux Verknüpfungen zu Dateien zu erstellen, unterscheiden sich jedoch in ihrer Funktionsweise und Anwendung:
-
Harter Link:
- Ist ein zusätzlicher Name für eine bestehende Datei.
- Verweist direkt auf den inode der Datei.
- Mehrere harte Links auf eine Datei sind gleichberechtigt – die Datei existiert, solange mindestens ein Link vorhanden ist.
- Es ist nicht möglich, einen harten Link auf ein Verzeichnis zu erstellen (um Zyklen zu vermeiden).
- Es ist nicht möglich, einen harten Link auf eine Datei auf einer anderen Partition oder einem anderen Gerät zu erstellen.
-
Symbolischer Link:
- Ist eine separate Datei, die den Pfad zu einer anderen Datei oder einem Verzeichnis enthält.
- Kann auf Verzeichnisse und Dateien auf anderen Partitionen verweisen.
- Wenn die Zieldatei gelöscht wird, wird der symbolische Link "kaputt" (funktioniert nicht mehr).
Beispiel für die Verwendung:
# Erstellen eines harten Links
ln original.txt hardlink.txt
# Erstellen eines symbolischen Links
ln -s /pfad/zur/original.txt symlink.txt
Harte Links sind nützlich, wenn man mehrere Namen für eine Datei innerhalb derselben Partition haben möchte, und symbolische Links, wenn man auf Dateien oder Verzeichnisse an verschiedenen Orten oder Partitionen verweisen möchte.