Weiche und harte Symlinks in Windows 11 und 10 erstellen: Erfahren Sie Schritt für Schritt, wie Sie symbolische Links und Hardlinks per CMD einrichten.

Symbolische Links – kurz Symlinks – sind leistungsstarke Verweise auf Dateien oder Ordner, die Windows so behandelt, als wären die Inhalte tatsächlich am Ort des Links gespeichert.
Unter Windows 10 und Windows 11 lassen sich sowohl weiche (Soft Links) als auch harte (Hard Links) Symlinks per Befehlszeile oder PowerShell erstellen. Dieser Artikel erklärt beide Typen, nennt alle Befehle und zeigt, wann welcher Link sinnvoll ist.
Was sind Symlinks und warum sind sie nützlich?
Bevor Sie mit dem Erstellen von Symlinks beginnen, lohnt es sich, den Unterschied zwischen den beiden Typen zu verstehen. Grundsätzlich handelt es sich bei Symlinks um NTFS-Funktionen, die ausschließlich auf NTFS-formatierten Laufwerken funktionieren. FAT32- oder exFAT-Volumes unterstützen diese Funktion hingegen nicht.
Weiche Links (Soft Links / Symbolische Links) funktionieren ähnlich wie eine erweiterte Desktop-Verknüpfung. Sie verweisen auf den Pfad, unter dem die Originaldatei oder der Originalordner gespeichert ist. Wird das Ziel verschoben oder gelöscht, zeigt der weiche Link ins Leere und ist damit ungültig. Dennoch bieten weiche Links einen entscheidenden Vorteil: Sie können laufwerksübergreifend eingesetzt werden und lassen sich sowohl auf Dateien als auch auf Ordner anwenden.
Harte Links (Hard Links) hingegen verweisen direkt auf die Inode-Daten der Datei im Dateisystem – also auf die eigentlichen Daten, nicht auf den Pfad. Dadurch bleibt ein harter Link gültig, selbst wenn die Originaldatei umbenannt oder verschoben wird. Für Verzeichnisse verwendet Windows eine Sonderform des harten Links, die sogenannte Junction (Verzeichnisverbindung). Außerdem bleiben die Daten so lange auf dem Laufwerk erhalten, bis der letzte harte Link auf sie gelöscht wurde.
In der Praxis ergeben sich daraus viele sinnvolle Einsatzszenarien:
- Programme in alternativen Pfaden speichern, ohne dass die Anwendung ihren Installationspfad verliert
- Ordner mit OneDrive oder anderen Sync-Diensten synchronisieren, ohne die Ordner physisch verschieben zu müssen
- Speicherplatz sparen, indem identische Dateien über harte Links gemeinsam auf denselben Datenblock verweisen
- Konfigurationsdateien zentral verwalten und über mehrere Pfade zugänglich machen
Voraussetzungen: Rechte und Einstellungen
Damit Sie Symlinks unter Windows 10 und Windows 11 erstellen können, müssen bestimmte Voraussetzungen erfüllt sein.
Administratorrechte (klassische Methode)
Standardmäßig erfordert das Erstellen symbolischer Links unter Windows Administratorrechte. Der Grund: Nur Benutzerkonten mit dem Sonderrecht SeCreateSymbolicLinkPrivilege dürfen Symlinks anlegen. Dieses Recht ist in der Standardkonfiguration ausschließlich lokalen Administratoren vorbehalten.
Deshalb müssen Sie die Eingabeaufforderung oder PowerShell stets als Administrator starten:
- Drücken Sie die Windows-Taste, tippen Sie cmd oder PowerShell ein.
- Klicken Sie mit der rechten Maustaste auf das Ergebnis.
- Wählen Sie „Als Administrator ausführen“.
Alternativ können Sie unter Windows 11 und 10 auch das Windows-Terminal als Administrator öffnen: Rechtsklick auf die Start-Schaltfläche → Terminal (Admin) → über den Pfeil in der Titelleiste zur Eingabeaufforderung wechseln.
Entwicklermodus (ohne Administratorrechte)
Ab Windows 10 Version 1703 und unter Windows 11 gibt es eine komfortable Alternative: Wenn Sie den Entwicklermodus aktivieren, können auch Standardbenutzer Symlinks ohne erhöhte Rechte erstellen. So aktivieren Sie ihn:
- Öffnen Sie Einstellungen (Windows-Taste + I).
- Navigieren Sie zu System → Für Entwickler (Windows 11) bzw. Update und Sicherheit → Für Entwickler (Windows 10).
- Aktivieren Sie den Schalter „Entwicklermodus“.
Nach der Aktivierung können Sie Symlinks in einer normalen Eingabeaufforderung oder PowerShell-Sitzung erstellen, ohne diese als Administrator zu starten.
Methode 1: Symlinks mit mklink erstellen (Eingabeaufforderung)
Der mklink-Befehl ist das klassische Windows-Werkzeug zum Erstellen von symbolischen Links. Er ist in der Eingabeaufforderung (cmd.exe) integriert und unterstützt alle vier Link-Typen. Wichtig: mklink steht in PowerShell 7 nicht direkt zur Verfügung – dort nutzen Sie stattdessen New-Item (siehe Methode 2). In der klassischen Windows PowerShell (powershell.exe) funktioniert mklink über cmd /c mklink.
Die allgemeine Syntax lautet:
mklink
Weichen Link (Soft Link) auf eine Datei erstellen
Ohne zusätzliche Parameter erstellt mklink einen symbolischen Link auf eine Datei:
mklink C:\SymLink\MeinLink.txt C:\Originale\MeineDatei.txt
Dieser Befehl erstellt den weichen Link MeinLink.txt im Ordner C:\SymLink, der auf die Datei C:\Originale\MeineDatei.txt zeigt. Anwendungen, die über den Link auf die Datei zugreifen, werden transparent zum Ziel weitergeleitet.
Weichen Link auf einen Ordner erstellen
Möchten Sie einen weichen Link auf ein Verzeichnis erstellen, benötigen Sie den Parameter /D:
mklink /D C:\SymLink\MeinOrdnerLink C:\Originale\MeinOrdner
Dadurch entsteht ein symbolischer Ordner-Link, der auf das Verzeichnis C:\Originale\MeinOrdner verweist. Außerdem lässt sich dieser Typ laufwerksübergreifend verwenden – etwa von C: auf D: oder sogar auf Netzwerkfreigaben.
Für Netzwerkpfade im UNC-Format sieht der Befehl entsprechend so aus:
mklink /D C:\SymLink\NetzwerkOrdner \\SERVERNAME\Freigabe
Harten Link auf eine Datei erstellen
Einen harten Link auf eine Datei erstellen Sie mit dem Parameter /H:
mklink /H C:\HardLinks\DateiLink.txt C:\Originale\MeineDatei.txt
Dabei ist zu beachten: Harte Links auf Dateien funktionieren nur innerhalb desselben Laufwerks (Volumes). Eine laufwerksübergreifende Verwendung ist technisch nicht möglich. Zudem muss die Zieldatei bereits existieren.
Junction (harten Link auf einen Ordner) erstellen
Für Verzeichnisse verwendet Windows die sogenannte Junction als harte Verknüpfung. Junctions erstellen Sie mit dem Parameter /J:
mklink /J C:\HardLinks\OrdnerLink C:\Originale\MeinOrdner
Junctions verhalten sich wie harte Links für Verzeichnisse: Anwendungen sehen die Dateien so, als befänden sie sich physisch am Ort des Links. Anders als Soft Links können Junctions keine relativen Pfade verwenden, sondern benötigen immer absolute Pfade.
Pfade mit Leerzeichen
Enthalten Pfade Leerzeichen, müssen Sie sie in Anführungszeichen einschließen:
mklink /J "C:\Mein Ordner\Link" "C:\Originale\Mein Ordner"
Übersicht: Alle mklink-Parameter
| Parameter | Link-Typ | Ziel | Laufwerksübergreifend |
|---|---|---|---|
| (keiner) | Soft Link | Datei | Ja |
| /D | Soft Link | Verzeichnis | Ja |
| /H | Hard Link | Datei | Nein |
| /J | Junction | Verzeichnis | Ja* |
*Junctions können laufwerksübergreifend zeigen, allerdings nur auf lokale Laufwerke – nicht auf Netzwerkfreigaben.
Methode 2: Symlinks mit PowerShell erstellen
Unter Windows PowerShell und PowerShell 7 nutzen Sie das Cmdlet New-Item mit dem Parameter -ItemType. Diese Methode ist besonders für Skriptautomatisierung geeignet und bietet gegenüber mklink eine objektorientierte Schnittstelle.
Weichen Link erstellen
New-Item -ItemType SymbolicLink -Path "C:\SymLink\MeinLink.txt" -Target "C:\Originale\MeineDatei.txt"
Für einen Ordner-Symlink verwenden Sie denselben Befehl – PowerShell erkennt automatisch, ob es sich um eine Datei oder ein Verzeichnis handelt:
New-Item -ItemType SymbolicLink -Path "C:\SymLink\OrdnerLink" -Target "C:\Originale\MeinOrdner"
Harten Link erstellen
New-Item -ItemType HardLink -Path "C:\HardLinks\DateiLink.txt" -Target "C:\Originale\MeineDatei.txt"
Junction erstellen
New-Item -ItemType Junction -Path "C:\HardLinks\OrdnerLink" -Target "C:\Originale\MeinOrdner"
Vorhandene Links anzeigen
Bestehende Links in einem Verzeichnis können Sie mit Get-ChildItem und einem Filter auf die Eigenschaft LinkType anzeigen:
Get-ChildItem | Where-Object { $_.LinkType -ne $null } | Select-Object Name, LinkType, Target
Symlinks und Junctions werden dabei in der Spalte Mode mit dem Buchstaben „l“ für Link gekennzeichnet. Harte Links erscheinen in dieser Ansicht hingegen nicht gesondert.
Methode 3: Grafisches Tool – Link Shell Extension
Wer die Kommandozeile lieber vermeiden möchte, kann das kostenlose Tool Link Shell Extension von Hermann Schinagl verwenden. Es integriert sich direkt in den Windows Explorer und ermöglicht das Erstellen aller Link-Typen per Drag-and-Drop.
So verwenden Sie Link Shell Extension:
- Laden Sie Link Shell Extension von der offiziellen Seite schinagl.priv.at/utils/lse/lse.html herunter und installieren Sie es.
- Navigieren Sie im Windows Explorer zum Quellordner oder zur Quelldatei.
- Klicken Sie mit der rechten Maustaste darauf und wählen Sie „Pick Link Source“.
- Navigieren Sie zum Zielort, wo der Link erscheinen soll.
- Klicken Sie mit der rechten Maustaste in den Zielordner und wählen Sie den gewünschten Link-Typ: „Drop As → Symbolic Link“, „Hard Link“ oder „Junction“.
Zudem können Sie mit Link Shell Extension bestehende Links visuell im Explorer erkennen – sie erhalten ein spezielles Overlay-Symbol.
Eine weitere einfache Option ist Symlink Creator von Arnob Paul (GitHub: github.com/arnobpl/SymlinkCreator), ein schlankes Open-Source-Tool (MIT-Lizenz), das ebenfalls eine grafische Oberfläche für mklink bietet und mehrere Symlinks gleichzeitig anlegen kann.
Symlinks löschen und verwalten
Das Löschen von Symlinks unterscheidet sich je nach Link-Typ und verdient besondere Aufmerksamkeit, da fehlerhafte Löschvorgänge Datenverlust verursachen können.
Weiche Links und Junctions löschen
Weiche Links und Junctions löschen Sie wie normale Dateien oder Ordner – entweder im Explorer oder per Kommandozeile:
del C:\SymLink\MeinLink.txt
Für Ordner-Symlinks und Junctions verwenden Sie:
rd C:\SymLink\OrdnerLink
Wichtig: Verwenden Sie niemals rd /s (rekursives Löschen) auf einem Ordner-Symlink oder einer Junction. Dadurch werden nicht nur der Link, sondern auch alle Inhalte des Zielverzeichnisses gelöscht.
Harte Links löschen
Harte Links löschen Sie ebenfalls mit del. Da harte Links jedoch direkt auf die Dateidaten zeigen, werden die eigentlichen Daten erst dann freigegeben, wenn alle harten Links auf diese Daten gelöscht wurden.
Häufige Fehler und Lösungen
Fehlermeldung: „Sie verfügen nicht über ausreichende Berechtigungen“
Dieser Fehler tritt auf, wenn Sie die Eingabeaufforderung nicht als Administrator gestartet haben und der Entwicklermodus deaktiviert ist. Lösung: Schließen Sie das Fenster und starten Sie cmd oder PowerShell erneut als Administrator.
Fehlermeldung: „Die angegebene Datei wurde nicht gefunden“
Das Ziel des Links existiert nicht. Überprüfen Sie den Zielpfad und stellen Sie sicher, dass die Datei oder der Ordner vorhanden ist, bevor Sie den Link erstellen.
mklink in PowerShell 7 nicht erkannt
In PowerShell 7 ist mklink nicht verfügbar, da es ein internes cmd.exe-Kommando ist. Verwenden Sie stattdessen New-Item oder rufen Sie mklink über cmd /c mklink ... auf.
Der Link zeigt ins Leere
Ein weicher Link zeigt ins Leere, wenn das Ziel verschoben, umbenannt oder gelöscht wurde. Passen Sie in diesem Fall den Link an oder erstellen Sie ihn neu.
Empfohlene Vorgehensweisen beim Arbeiten mit Symlinks
Damit Sie langfristig fehlerfrei mit Symlinks arbeiten, sollten Sie einige empfohlene Vorgehensweisen beachten:
- Verwenden Sie absolute Pfade, um Verwechslungen bei relativen Pfadangaben zu vermeiden – besonders bei Junctions ist dies zwingend erforderlich.
- Dokumentieren Sie Ihre Links, beispielsweise in einer einfachen Textdatei, damit Sie später nachvollziehen können, welcher Link wohin zeigt.
- Sichern Sie Zieldaten separat – Backup-Programme sichern Symlinks unterschiedlich. Manche sichern nur den Link, andere folgen ihm und sichern den Inhalt. Prüfen Sie das Verhalten Ihres Backup-Tools.
- Prüfen Sie Berechtigungen, denn auch wenn der Link für Sie zugänglich ist, kann das Zielverzeichnis eingeschränkte Zugriffsrechte haben.
- Nutzen Sie PowerShell für Automatisierungen, da
New-Itemsich deutlich besser in Skripte einbinden lässt als mklink.
