Softlink


Softlink

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. Um einen Eintrag in das Dateiverzeichnis zu erstellen, werden harte Links (engl. hardlink) verwendet.

Inhaltsverzeichnis

Unix

In einem Unix-System kann man mit einem der folgenden Befehle eine Verknüpfung namens „/home/wiki/nullink“ erstellen, die auf /dev/null zeigt:

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

Ob die Datei „/home/wiki/nullink“ eine symbolische Verknüpfung ist, findet man mit einem dieser Befehle heraus:

> file /home/wiki/nullink
> ls -l /home/wiki/nullink

Allgemein muss man beachten, dass eine symbolische Verknüpfung 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 Symlink zeigt drauf, kann die Zieldatei nicht wissen, dass eine Verknüpfung auf sie zeigt, womit die symbolische Verknüpfung ins Leere zeigt. Gleiches gilt, wenn eine relative symbolische Verknüpfung 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 Verknüpfungen können einige Benutzer verwirren. Auch wenn es auf den ersten Blick so scheint, als sei die verknüpfte Datei in mehreren Verzeichnissen gleichzeitig vorhanden, führt das Löschen der Originaldatei dazu, dass alle symbolischen Verknüpfungen, die darauf verweisen, ins Leere gehen und die Datei damit verloren ist.

Symbolische Verknüpfungen 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 verknüpften Verzeichnisses ebenfalls gelöscht werden. Unix versucht dem zu einem gewissen Grad vorzubeugen, indem es verbietet, eine symbolische Verknüpfung auf ein Verzeichnis über den Systembefehl „rmdir“ zu löschen, damit unbedarft mit symbolischen Verknüpfungen umgehende Programme eine Fehlermeldung erhalten und fehlschlagen, wenn sie eine solche Verknüpfung entfernen wollen. Ein solches Programm ist der SSH-Client (die Windows-Version) von „ssh.com“.

Windows

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

Seit Windows NT 6.0 (Windows Vista, Windows Server 2008) stehen echte symbolische Links zur Verfügung, die transparent im Dateisystem vorliegen und auf Dateien, Verzeichnisse oder UNC-Pfade verweisen können. Symbolische Links dürfen allerdings nur mit Administratorrechten angelegt werden.

Anlegen symbolischer Links unter Windows Vista und Windows Server 2008:

c:\>mklink "C:\Neue Datei" "D:\Alte Datei"
c:\>mklink /d "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"
c:\>mklink /d "C:\Netzwerkshare" "\\meinserver\meinshare"

Löschen symbolischer Links unter Windows Vista und Windows Server 2008:

c:\>erase "C:\Neue Datei"
c:\>rmdir /s /q "C:\Neues Verzeichnis" 
c:\>rmdir /s /q "C:\Netzwerkshare"

Symbolische Links unter Windows bleiben (genau wie unter UNIX) auch nach einem Neustart des Systems bestehen.

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

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

Mit den in der Kommandozeile auszuführenden Befehlen

C:\>JUNCTION.EXE "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"

oder

C:\>LINKD.EXE "C:\Neues Verzeichnis" "D:\Pfad\Reales Verzeichnis"

kann ein Abzweigungspunkt "C:\Neues Verzeichnis" angelegt werden, der "D:\Pfad\Reales Verzeichnis" referenziert. Der Inhalt von "D:\Pfad\Reales Verzeichnis" (junction target) kann im Explorer nun auch unter "C:\Neues Verzeichnis" (junction directory) aufgerufen und gestartet werden. Abzweigungspunkte bleiben ebenfalls nach einem Windows-Neustart erhalten.

Die Aufhebung eines Abzweigungspunktes erfolgt mittels folgendem Kommandozeilenbefehls:

C:\>JUNCTION.EXE -d "C:\Neues Verzeichnis"

oder

C:\>LINKD.EXE "C:\Neues Verzeichnis" /D

Wobei der Parameter "d" für DELETE und "C:\Neues Verzeichnis" für das angelegte Junction target steht.

Auf der Kommandozeile können Abzweigungspunkte auch mit dem DIR-Befehl angezeigt werden, wobei anstelle eines <DIR> (für normale Verzeichnisse) dann <VERBINDUNG> oder <JUNCTION> ausgegeben wird.

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

Mac OS X

Ähnlich wie bei Windows ist ein „Alias“ nicht mit einer symbolischen Verknüpfung vergleichbar. Symbolische Verknüpfungen werden – wie bei anderen Unix-Systemen auch – über eine Shell mit dem ln-Befehl erstellt.

Quellen

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

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Softlink —   [dt. »weiche Verbindung«] (symbolischer Link), die Verknüpfung eines Verzeichniseintrags oder eines Icons (Symbol) mit einer Datei, die in einem anderen Verzeichnis abgelegt ist …   Universal-Lexikon

  • SFLK — Softlink, Inc. (Business » NASDAQ Symbols) …   Abbreviations dictionary

  • SFLKE — Softlink, Inc. (Business » NASDAQ Symbols) …   Abbreviations dictionary

  • File — Aktuelle Version: 5.01 (30. April 2009) Betriebssystem: Multiplattform Kategorie: Remote Access Lizenz: GPL …   Deutsch Wikipedia

  • Catálogo en línea — u OPAC (inglés Online public access catalog) es un catálogo automatizado de acceso público en línea de los materiales de una biblioteca. Generalmente, tanto el personal de la biblioteca como el público tienen acceso a él en varias terminales… …   Wikipedia Español

  • Girne American University — Infobox University name=Girne American University native name=Girne Amerikan Üniversitesi established=1985 type=Private rector=Prof. Dr. Hıfzı Doğan students=6,000 city=Girne (Kyrenia) country=flag|Northern Cyprus website= [http://www.gau.edu.tr… …   Wikipedia

  • List of Deshastha Brahmins of distinction — Deshastha Brahmins form a major sub caste of Brahmins in the states of Maharashtra and parts of Karnataka in India.The following is a list of prominent Deshastha Brahmins organized by occupational fields: Freedom fighters and social activists… …   Wikipedia

  • Junction Point — 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… …   Deutsch Wikipedia

  • Symbolic link — 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… …   Deutsch Wikipedia

  • Symbolische Verknüpfung — Eine symbolische Verknüpfung, auch symbolischer Link, Symlink oder Softlink genannt, ist eine Verknüpfung in einem Dateisystem (Dateien und Verzeichnisse), die auf eine andere Datei oder ein anderes Verzeichnis verweist. Es ist also lediglich… …   Deutsch Wikipedia