Was sind Linux Links?

Es gibt zwei Arten von "Links" in Linux.

  • Harte Links (Hard Links)
  • Symbolische Links

Befehl in der Konsole:

ln [OPTION]... [-T] TARGET LINK_NAME
ln [OPTION]... TARGET
ln [OPTION]... TARGET... DIRECTORY
ln [OPTION]... -t DIRECTORY TARGET...

In der ersten Form wird ein Link mit dem Namen "LINK_NAME" erzeugt.

In der zweiten Form wird ein Link zum Ziel "TARGET" im aktuellen Verzeichnis erstellt

In der dritten und vierten Form wird ein Link zum jeweiligen Ziel "TARGET" im Ziel "DIRECTORY" erzeugt.

Aber was sind denn nun Links?

Im Prinzip nichts anderes als ein Verweis auf ein anderes Ziel. Da in Linux alles "Datei" ist (auch ein Verzeichnis) ist der Typ des Ziels an sich unwichtig.

Wozu braucht man Links?

Für den Normal-Benutzer sind Links nur an einer Stelle verständlich. Und sogar da sind sie etwas anderes, als die eigentlichen Linux-Links. Für den Normal-Benutzer sind Desktop-Icons, die auf eine bestimmte Datei verweisen, die eigentlichen Links. Hier ist es aber eine Datei, die zum Inhalt hat, ein Bildchen (Icon) darzustellen und einen Text, der darauf hinweist, was es für eine Datei ist. Zusätzlich verbindet diese Datei mit der eigentlichen Datei. Die muss (und sollte) nicht auf dem Desktop liegen.

Für die anderen Nutzer sind Links nicht anderes als Verzeichniseinträge, die auf eine andere Datei zeigen (verlinken). Und jetzt wird es interessant.

Symbolische Links:

Nehmen wir an, es gibt eine Datei mit dem Namen "Meine-Datei.xyz". Den Dateinamen möchte ich nicht verändern, weil der im Dateisystem eine spezielle Bedeutung hat. Um dieser Datei doch einen anderen Namen zu verpassen, kann ich z.B. einen Symbolischen Link verwenden.

ln -s Meine-Datei.xyz neu.odt

Somit kann ich die Datei mit dem Namen "neu.odt" (Ein OpenOffice-Dokument) ansprechen, ohne eine Kopie davon zu machen. Jede Veränderung der Datei "neu.odt" wird direkt in der Datei "Meine-Datei.xyz" gespeichert.

Harte Links:

Hier können wir die gleichen Annahmen machen, wie beim symbolischen Link. Der Unterschied ist hier, dass in der Verzeichnisliste ein Eintrag erzeugt wird, der direkt auf den Inhalt der Datei "Meine-Datei.xyz" erstellt. Es wird kein Speicherplatz verbraucht. Hier wird nur in den Verzeichniseinträgen ein zusätzliche Eintrag erstellt. Dieser zeigt nicht auf einen neuen Speicherbereich, sondern auf einen schon verwendeten Speicherbereich.

Dieser Trick wird sehr gerne von Backup-Programmen verwendet. Z.B. "back-in-time"

Das Ergebnis ist ein Backup von z.B. des gesamten Home-Verzeichnisses eines Benutzers in "zig" Versionen, ohne zusätzlichen Platz zu benötigen. Es werden nur die veränderten Dateien neu gespeichert. Die gleich gebliebenen Dateien werden nur "verlinkt".

Zuletzt aktualisiert am 2024-02-26 von Admin LUG.

Zurück zur FAQ-Übersicht