Création d'un lien symbolique vers un lecteur réseau mappé sous Windows


36

Je rencontre un problème lors de la création d'un lien symbolique sur Windows 7 Ultimate. Je souhaite mapper un dossier d'un lecteur réseau mappé dans Mes documents.

mklink /D "C:\Users\Vegard\Documents\Virtual Machines" "Z:\Virtual Machines"retourne You do not have sufficient privilege to perform this operation..

Z:\Virtual Machines est configuré pour être disponible hors ligne, mais je suis en ligne lorsque j'essaye.

Voici ce que j'ai essayé (comme suggéré ici ):

  1. Utilisation de la stratégie de sécurité locale pour ajouter mon utilisateur à Local Polices \ User Rights Assignments \ Create symbolic links, and rebooting. Pas de chance.

  2. Exécution de cmd.exe en tant qu'administrateur, mais je ne vois pas du tout le lecteur réseau mappé. Je peux cependant créer des liens symboliques sur le disque.

  3. Utiliser fsutilpour changer symlinkevaluation, pour régler R2L:1(même s'il me semble que je veux L2R, ce qui est déjà activé).

  4. L'utilisation du chemin UNC complet du dossier partagé ne fonctionne pas non plus ( The syntax of the command is incorrect.lorsqu'il est exécuté en tant qu'administrateur, You do not have sufficient privilege to perform this operation.lorsqu'il est exécuté en tant qu'utilisateur normal).

Sortie de fsutil behavior query symlinkevaluation:

C:\Windows\system32>fsutil behavior query symlinkevaluation
Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are enabled.
Remote to remote symbolic links are disabled.

Des idées?


Comme je l'ai mentionné ci-dessous, c'est parce qu'une invite élevée n'a pas les fichiers partagés qui lui sont mappés. Essayez un cd z:` and you'll get an error. run cmd` en tant qu'utilisateur et vérifiez que le dossier est mappé.
surfasb

Réponses:


49

Exécutez cmd en tant qu'administrateur et utilisez le chemin UNC.

La commande suivante a fonctionné pour moi en tant qu'administrateur:

mklink /D C:\temp11111 \\server\share\foldername\

Et vérifiez également si votre commande contient des guillemets appropriés ( ").


8

Il s'agit d'un ancien fil de discussion, mais je tiens à préciser que vous pouvez créer des liens symboliques comme celui-ci:

Votre compte d'utilisateur dispose de certaines politiques de sécurité par défaut qui peuvent être désactivées via secpol.msc. Accédez à la boîte de dialogue Exécuter et saisissez:

secpol.msc
  • Aller vers: Local Policies > User Rights Assignment
  • Double-cliquez: créer des liens symboliques
  • Ajoutez votre nom d'utilisateur à la liste, cliquez sur OK
  • Se déconnecter

Lorsque vous vous reconnectez, exécutez cmd avec les privilèges d'administrateur . Vous devriez maintenant pouvoir exécuter sans problème des commandes mklink comme celle-ci:

mklink /d %userprofile%\music \\server\music

Remarque: assurez-vous que le répertoire auquel vous essayez de créer un lien existe ou n'a pas été déplacé ou supprimé avant de créer un lien.


1
Remarque; secpol.msc n'existe pas dans la version domestique de win7.
JonoRR

Pourquoi la fonction d'administrateur est-elle nécessaire? Si l'utilisateur a le privilège Créer un lien symbolique, on pourrait penser qu'une telle élévation ne serait pas requise
kreemoweet

2

Ma solution est devenue de désactiver le contrôle de compte d'utilisateur, de redémarrer, puis de créer les liens symboliques en tant que mon propre utilisateur, puis de réactiver l'UAC et de redémarrer à nouveau.

Plutôt malheureux si j'ai besoin de créer d'autres liens symboliques à un stade ultérieur, mais cela fonctionne, c'est juste très gênant.


5
Cela est dû au fait que le partage de dossiers est mappé sous le compte d'utilisateur. Lorsque vous lancez cmd en tant qu'administrateur, il se lance en tant que compte d'administrateur et n'a pas de partage de dossier mappé.
surfasb

2

Si vous faites cela dans Powershell, vous devrez d'abord ouvrir CMD:

CMD /C MKLINK /D C:\local\path \\UNC\path\folder

L' /Cargument indique à CMD d'exécuter la commande dans la chaîne, puis de quitter.


1

Vous devez activer les liens locaux vers distants en exécutant cette commande avec des droits élevés: comportement fsutil défini SymlinkEvaluation L2R: 1

Vous pouvez également l'activer avec votre stratégie locale ou de groupe: Ordinateur \ Système \ Système de fichiers \ Autoriser sélectivement l'évaluation d'un lien symbolique -> autoriser le local au distant

Meilleures salutations,

Matthias


-1

Vous ne pouvez pas faire de liens symboliques dans les réseaux et le lecteur mappé comme source, vous ne pouvez l'utiliser que comme cible et la source est vos lecteurs locaux

vous ne pouvez pas faire comme ça:

Le lecteur mappé est le lecteur Z: \ Target (lecteur local ou réseau)

Mklink / dz: \ SourceFolder c: \ Target Mklink / dz: \ SourceFolder F: \ SharedNetworkFolder

ils sont une erreur et ne peuvent pas être utilisés comme liens symboliques

uniquement du Local au réseau et du Local au Local uniquement fonctionnera dans les liens symboliques

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.