Junction Point


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 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:

  • Junction Point — may refer to: *NTFS junction point *Junction Point Studios …   Wikipedia

  • junction point — sujungimo taškas statusas T sritis fizika atitikmenys: angl. junction point vok. Verbindungspunkt, m rus. точка соединения, f pranc. point de jonction, m …   Fizikos terminų žodynas

  • junction point —    In Microsoft Windows 2000, a drive or disk partition attached to an empty folder on an NTFS volume. Using junction points allows you to mount more than 26 (A Z) storage volumes.    See also mounted drive …   Dictionary of networking

  • junction point — noun see junction I, 2b …   Useful english dictionary

  • Junction Point Studios — is a video game developer based in Austin, Texas. The studio was established in 2005 by Warren Spector and Art Min, prominent figures in the game development industry. The new studio is based around several former employees of Ion Storm, where… …   Wikipedia

  • Junction Point Studios — Pour les articles homonymes, voir Junction (homonymie). Logo de Junction Point Studios …   Wikipédia en Français

  • junction point of network — connection point between communications lines that usually manage the information passing through them using a particular communications protocol …   English contemporary dictionary

  • NTFS junction point — An NTFS junction point is a feature of the NTFS file system that provides the ability to create a symbolic link to a directory which then functions as an alias of that directory. This has many benefits over a Windows shell shortcut (.lnk) file,… …   Wikipedia

  • NTFS junction point — NTFS Junction Point  нововведение в файловой системе NTFS 5.0, т. н. точка соединения NTFS. Суть заключается в том, что указанный логический диск будет отображаться как папка в другом логическом диске. Эта возможность позволяет… …   Википедия

  • Junction — may refer to:*Junction (traffic) where several traffic routes cross: **junction (rail), a railroad/railway junction **Intersection (road), a road junction **Interchange (road), a motorway junction *The Junction, a Toronto neighbourhood *The… …   Wikipedia