Das Kefk Network Wiki befindet sich im Testbetrieb.


Symbolische Verknüpfung

Aus Kefk.

(Weitergeleitet von Symbolischer Link)
Wechseln zu: Navigation, Suche

Eine symbolische Verknüpfung, auch symbolischer Link, Symlink oder Softlink genannt, ist eine Verknüpfung in einem Dateisystem (Datei oder Verzeichnis), die auf eine andere Datei oder ein anderes Verzeichnis verweist. Es ist also lediglich eine Referenz und kein richtiges Element.

Inhaltsverzeichnis

Unix

In einem Unixsystem kann man mit einem der folgenden Befehle einen Link namens „/home/wiki/nullink“ erstellen, der auf /dev/null zeigt:

> ln -s /dev/null /home/wiki/nullink
> ln --symbolic /dev/null /home/wiki/nullink

Allgemein muss man beachten, dass ein symbolischer Link anders als ein „harter Link“ auf einen Pfad zeigt. Ein „harter Link“ zeigt auf einen Inode, was bedeutet, dass ein „harter Link“ immer noch funktioniert, wenn die Zieldatei verschoben wurde. Wenn man aber die Zieldatei verschiebt, und ein Softlink zeigt drauf, kann die Zieldatei nicht wissen, dass ein Link auf sie zeigt, womit der symbolische Link ins Leere zeigt. Gleiches gilt, wenn ein relativer symbolischer Link selbst verschoben wird.

Der Vorteil ist aber, dass diese Arten von Verknüpfungen partitions- und dateisystemübergreifend arbeiten können und auch bei Verzeichnissen funktionieren, was bei harten Links nicht der Fall ist.

Symbolische Links können in den Händen von unerfahrenen Computerbenutzern gefährlich sein! Auch wenn es auf den ersten Blick so scheint, als sei die verlinkte Datei in mehreren Verzeichnissen gleichzeitig vorhanden, führt das Löschen der Originaldatei dazu, dass alle symbolischen Links, die darauf verweisen, ins Leere gehen und die Datei damit verloren ist.

Symbolische Links auf Verzeichnisse können mit Programmen gefährlich werden, die unbedarft mit Verzeichnisbäumen umgehen. Bestenfalls entsteht eine endlose Schleife sowie ein Pufferüberlauf des Verzeichnispfadpuffers, was zu Abstürzen oder gefährlichen Fehlfunktionen führt. Schlimmstenfalls führt das Löschen eines Verzeichnisbaums dazu, dass auch die Inhalte des symbolisch verlinkten Verzeichnisses ebenfalls gelöscht werden. Unix versucht dem zu einem gewissen Grad vorzubeugen, indem es verbietet, einen symbolischen Verzeichnislink über den Systembefehl „rmdir“ zu löschen, damit unbedarft mit symbolischen Links umgehende Programme eine Fehlermeldung erhalten und fehlschlagen, wenn sie so einen solchen Link entfernen wollen. Ein solches Programm ist der SSH-Client (die Windows-Version) von „ssh.com“.

Windows

Die „Verknüpfung“ unter Microsoft Windows ist mit einem symbolischen Link nicht zu vergleichen, da sie keine Aliasverbindung darstellt, die direkt verfolgt werden kann. Im Gegensatz dazu können durch einen symbolischen Link z.B. auch Unterverzeichnisse des Ziels direkt angesprochen werden.

Eine weitere Möglichkeit in Windows sind Abzweigungspunkte („junction points“), welche jedoch das Dateisystem NTFS 5 bzw. ab Version 3.0 (Windows 2000, Windows XP, Windows 2003 und Windows Vista) voraussetzten. Diese sind den symbolischen Links auf Verzeichnisse sehr viel ähnlicher als Verknüpfungen.

Junction Points können unter den angegebenen Voraussetzungen mit den bei Microsoft erhältlichen Zusatzbefehlen junction[1] oder der linkd[2] aus den Windows 2003 Resource Kit Tools erstellt werden.

Mit

C:\>junction "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"

oder

C:\>linkd "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"

kann ein Junction Point "C:\Neues Verzeichnis" anlegt werden, der "D:\Pfad\Reales Verzeichnis" referenziert.

Vista-Variante mit einem Unix-ähnlichen Softlink:

c:\>mklink /d "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"

Eine installierte Cygwin-Umgebung befähigt zudem auch die Windows Kommandozeile (cmd.exe) (auf NTFS unter Windows 2000, Windows XP, Windows 2003 und Windows Vista) mittels des Kommandos ln symbolische und harte Links zu setzen.


Quellen

  1. Junction v1.04
  2. Windows 2003 Resource Kit Tools

Weblinks

Wikipedia
Dieses Dokument entstammt in seiner ersten oder einer späteren Version der deutschsprachigen Wikipedia. Es ist dort zu finden unter dem Stichwort Symbolische_Verkn%C3%BCpfung, die Liste der bisherigen Autoren befindet sich in der Versionsliste; die Originalfassung kann dort auch bearbeitet werden. Alle Texte der Wikipedia und ihre Derivate stehen unter der GNU-Lizenz für freie Dokumentation.
Persönliche Werkzeuge