Ich habe eine Antwort von dieser Seite gefunden . Kurz gesagt, ich hätte cmd.exe als Administrator ausführen sollen.
Zugriff wird verweigert, wenn ich unter Windows 7 mklink
Mein Heimatverzeichnis ist c: \ Users \ phi als Benutzer-phi und ich habe ein Verzeichnis unter c: \ Users \ abc erstellt. Ich muss einen symbolischen Link von c: \ Users \ phi \ hello zu c: \ Users \ abc \ hello haben.
Ich führe den folgenden Befehl aus
mklink c: \ Benutzer \ abc \ hallo c: \ Benutzer \ phi \ hallo
Aber ich bekomme den Zugriff verweigert . Benutzer-Phi ist Administrator, daher habe ich kein Problem beim Schreiben von Dateien in c: \ Users \ abc.
Warum ist das? Wie mklinke?
10 Antworten auf die Frage
- Beliebte
- Neu
- Mit Kommentaren
- Aktiv
Important points:
- You need to run as admin if UAC is on. (or at least security policy to allow creation of links).
- The
/D
switch needs to be used if the link is for directory. - First parameter is a link, second parameter is the original folder.
- Link should not exist already.
Usage:
mklink /D c:\users\me\new_link\ c:\users\me\original_folder\
Beachten Sie, dass derselbe Fehler angezeigt wird, wenn Sie versuchen, Junctions auf zugeordneten Laufwerken zu erstellen . Ich habe mir die Haare ausgezogen, bis ich auf die Beispiele auf dieser Seite von MSDN Hard Links und Junctions gestoßen bin .
Kurze Antwort: Sie können mklink nur auf lokalen Volumes verwenden.
In Windows 7 (und höher) benötigen Sie ein besonderes Sicherheitsrecht, um Links und Junctions zu erstellen. Als Administrator können Sie diese Berechtigung den Benutzern erteilen, die diese secpol.msc
Einstellung verwenden Local Policies\User Rights Assignment\Create symbolic links
.
Wenn der Benutzer zu diesem Zeitpunkt angemeldet ist, muss er sich ab- und wieder anmelden, um Verknüpfungen erstellen zu können.
Beachten Sie die Vorsicht, dass Links Sicherheitslücken in einigen Apps aufdecken können. Ich habe nicht untersucht, welche Schwächen diese haben könnten.
Wenn Sie häufig Linux verwenden, denken Sie daran, dass die Parameter unter Windows ausgetauscht werden.
Wenn Sie die falsche Reihenfolge verwenden, erhalten Sie auch einen "Zugriff verweigert". Weil Sie versuchen, einen symbolischen Link zu erstellen, bei dem das Original bereits vorhanden ist.
Windows: mklink /D link original
Linux: ln -s original link
Ich bekam das, weil ich versehentlich mklink /D
gegen eine Akte gerannt bin . Der Link wurde nicht im Explorer angezeigt, jedoch im Windows Explorer. Mit der Eingabeaufforderung habe ich die ursprüngliche ungültige Verzeichnisverknüpfung gelöscht und sie ohne die /D
Option neu erstellt.
Ich habe übrigens die Fehlermeldung "Zugriff wurde verweigert" erhalten, obwohl ich cmd.exe als Administrator ausgeführt habe.
Apart from running mklink
as Administrator you also should make sure that you have enough permissions to the destination folder you are linking to.
Wenn du läufst:
mklink / j C: \ path_to_link C: \ destination
es sollte funktionieren. In meinem Fall produzierten Powershell und cmd dieselbe Ausgabe. Bei Powershell müssen Sie den Befehl nur mit starten
cmd / c mklink ...
Das hört sich vielleicht komisch an, aber überprüfen Sie, ob die Datei oder der Ordner noch nicht vorhanden ist, die Sie erstellen möchten. Manchmal ist es leicht, in der Eingabeaufforderung von cmd zu übersehen.
Für Verzeichnisse müssen Sie Folgendes tun:
mklink /D c:\Users\abc\hello c:\Users\phi\hello
Verwandte Probleme
-
2
Erinnert sich Windows 7 Home Premium an Netzwerkfreigaben-Passwörter?
-
4
Wie sperre ich rechtsbündige Symbolleisten in Windows 7, ohne dass sie schrecklich aussehen
-
4
Windows 7 "Aero Snap" -Funktion für Ubuntu GNOME
-
3
Meine zweite Festplatte ist in Windows 7 nicht sichtbar
-
7
Wie ersetze ich Notepad in Windows 7?
-
2
Wie werden Windows 7-Taskleistensymbole in zwei Reihen angeordnet?
-
1
Probleme beim Standby unter Windows 7
-
6
Wie steuern Sie die Windows 7-Snap-Funktion mit zwei Monitoren?
-
10
Wie aktualisiere ich von Windows 7 RC auf Windows 7 RTM?
-
3
Welchen Spyware-Schutz gibt es für Windows 7?