Создание символической ссылки на подключенный сетевой диск в Windows

36

У меня проблема с созданием символической ссылки в Windows 7 Ultimate. Я хочу сопоставить папку с подключенного сетевого диска в Мои документы.

mklink /D "C:\Users\Vegard\Documents\Virtual Machines" "Z:\Virtual Machines"возвращается You do not have sufficient privilege to perform this operation..

Z:\Virtual Machines настроен быть доступным в автономном режиме, но я в сети, когда я пытаюсь это сделать.

Вот что я попробовал (как здесь предлагается ):

  1. Использование локальной политики безопасности для добавления моего пользователя в локальные политики \ Назначения прав пользователя \ Создание символических ссылок и перезагрузка. Не повезло.

  2. Запускаю cmd.exe от имени администратора, но тогда я вообще не вижу подключенный сетевой диск. Однако я могу создавать символические ссылки на диске.

  3. Использование, fsutilчтобы изменить symlinkevaluation, чтобы установить R2L:1(хотя мне кажется, что я хочу L2R, который уже включен).

  4. Использование полного UNC-пути к общей папке также не работает ( The syntax of the command is incorrect.при запуске от имени администратора, You do not have sufficient privilege to perform this operation.при запуске от имени обычного пользователя).

Выход 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.

Любые идеи?

Вегард Ларсен
источник
Как я упоминал ниже, это связано с тем, что в приглашении с повышенными правами не отображаются сопоставленные папки. Попробуйте использовать cd z:` and you'll get an error. run cmd` в качестве пользователя и убедитесь, что папка сопоставлена.
Surfasb

Ответы:

49

Запустите cmd от имени администратора и используйте UNC-путь.

Следующая команда работала для меня как администратор:

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

А также проверьте, содержит ли ваша команда соответствующие кавычки ( ").

jhamu
источник
8

Это старая ветка, но все же хочу уточнить, что вы можете создавать символические ссылки, например:

Ваша учетная запись пользователя имеет некоторые политики безопасности по умолчанию, которые могут быть отключены через secpol.msc. Перейдите в диалоговое окно «Выполнить» и введите:

secpol.msc
  • Перейдите к: Local Policies > User Rights Assignment
  • Двойной щелчок: создание символических ссылок
  • Добавьте свое имя пользователя в список, нажмите ОК
  • Выйти

Когда вы снова войдете в систему, запустите cmd с правами администратора . Теперь вы сможете без проблем запускать такие команды mklink:

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

Примечание. Убедитесь, что каталог, на который вы пытаетесь создать ссылку, существует, либо не был перемещен или удален, прежде чем создавать ссылку.

reconx86
источник
1
Заметка; secpol.msc не существует в домашней версии win7.
JonoRR
Зачем нужно работать от имени администратора? Если пользователь имеет привилегию Создать символическую ссылку, можно подумать, что такого повышения не потребуется
kreemoweet
2

Мое решение состояло в том, чтобы отключить Контроль учетных записей, перезагрузить, затем создать символические ссылки как мой собственный пользователь, затем повторно включить UAC и перезагрузить снова.

Весьма прискорбно, если мне нужно создать дополнительные символические ссылки на более позднем этапе, но это работает, это просто очень неудобно.

Вегард Ларсен
источник
5
Это потому, что папка общего доступа сопоставлена ​​с учетной записью пользователя. Когда вы запускаете cmd от имени администратора, он запускается от имени учетной записи администратора и не отображает общие папки.
Surfasb
2

Если вы делаете это в Powershell, вам сначала нужно открыть CMD:

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

/CАргумент говорит CMD , чтобы выполнить команду в строке , а затем выйти.

music2myear
источник
1

Вам нужно включить локальные ссылки на удаленные, запустив эту команду с повышенными правами: fsutil поведение set SymlinkEvaluation L2R: 1

Также вы можете включить это с вашей локальной или групповой политикой: Компьютер \ Система \ Файловая система \ Выборочно разрешить оценку символической ссылки -> разрешить локальное удаленное

С наилучшими пожеланиями,

Матиас

Матиас
источник
-1

Вы не можете использовать символические ссылки в сетях и подключенном диске в качестве источника, вы можете использовать его только в качестве целевого, а источником являются ваши локальные диски

вы не можете делать так:

Подключенный диск - это диск Z: \ Target (локальный диск или сеть)

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

они являются ошибкой и не могут использоваться в качестве символических ссылок

только из локальной сети и только из локальной сети будет работать в символических ссылках

отметка
источник