Windowsgilt für Windows 10 und 11
Wie lege ich unter Windows symbolische und feste Verknüpfungen an?
Ein Ordner soll an zwei Stellen erscheinen, ohne ihn zu kopieren, etwa ein Spielstand, der auf ein anderes Laufwerk umziehen soll, während das Programm ihn am alten Ort erwartet. Windows-Verknüpfungen aus dem Kontextmenü helfen da nicht. Was ist der richtige Weg?
Lösung
Kurz: mklink in der Eingabeaufforderung. mklink /D Link Ziel legt einen symbolischen Link auf einen Ordner an, mklink /J eine Junction, mklink /H einen Hardlink auf eine Datei. Programme sehen den Link wie den echten Ordner.
Die vier Varianten
| Befehl | Legt an | Hinweis |
|---|---|---|
| mklink Link Ziel | symbolischen Link auf eine Datei | braucht Adminrechte oder den Entwicklermodus |
| mklink /D Link Ziel | symbolischen Link auf einen Ordner | braucht Adminrechte oder den Entwicklermodus, auch Netzwerkziele möglich |
| mklink /J Link Ziel | Junction auf einen Ordner | ohne Adminrechte, nur lokale Laufwerke |
| mklink /H Link Ziel | Hardlink auf eine Datei | ohne Adminrechte, nur auf demselben Laufwerk |
Beispiel: Ordner auf ein anderes Laufwerk verlegen
Den Ordner zuerst an den neuen Ort verschieben, dann am alten Ort eine Junction anlegen, die dorthin zeigt:
move "C:\Spiele\Speicherstände" "D:\Speicherstände"
mklink /J "C:\Spiele\Speicherstände" "D:\Speicherstände"
Die Reihenfolge ist wichtig: zuerst der Name des Links, dann das Ziel. Am Link darf noch nichts liegen.
Link wieder entfernen
Einen Ordnerlink oder eine Junction löscht rmdir "C:\Spiele\Speicherstände", einen Dateilink
del. Dabei verschwindet nur der Link, das Ziel bleibt unangetastet.
Nachträge
Warum meldet PowerShell, dass es mklink nicht gibt?
mklink ist ein eingebauter Befehl der Eingabeaufforderung, kein eigenes Programm. In PowerShell
ruft man ihn über cmd /c mklink /J Link Ziel auf oder nimmt das Gegenstück:
New-Item -ItemType SymbolicLink -Path "C:\Link" -Target "D:\Ziel"
Für eine Junction heißt der Typ Junction, für einen Hardlink HardLink.
Was ist der Unterschied zwischen symbolischem Link und Junction?
Beide leiten auf einen Ordner um. Eine Junction funktioniert nur zwischen lokalen Laufwerken, braucht aber keine Adminrechte. Ein symbolischer Link kann auch auf Netzwerkfreigaben und relative Pfade zeigen. Für das Verlegen von Ordnern auf ein anderes internes Laufwerk reicht die Junction.
Wie erkenne ich einen Link im Explorer?
Symbolische Links und Junctions tragen im Explorer einen kleinen Pfeil am Symbol. In der Eingabeaufforderung
zeigt dir sie als <SYMLINKD> oder <JUNCTION> samt
Ziel an.