Повышенная командная строка не может получить доступ к общим дискам


62
  1. Я сопоставляю общий ресурс с другого компьютера, используя мою учетную запись.
  2. Я запускаю командную строку с повышенными правами (cmd.exe, щелчок правой кнопкой мыши, Запуск от имени администратора).
  3. Переход к общему диску (Z :) приводит к:

The system cannot find the drive specified

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


Ответы:


47

Открытие Windows Explorer в качестве администратора и воссоздание сетевых ресурсов для меня не сработало. Затем я нашел это решение: создайте общий ресурс в командной строке. Это сработало для меня.

net use f: \\remoteserver\subfolder      

Даже если диск уже подключен в проводнике Windows, он все равно работает.

Примечание. Используйте только одну обратную косую черту перед подпапкой.


25

Вероятно, это не проблема прав доступа к файлам, но это связано с:

  • Сетевые ресурсы, связанные с сеансами (т. Е. Разные пользователи могут иметь разный набор сетевых ресурсов). Обратите внимание, что пользователь может иметь более одного сеанса.
  • Как работает контроль учетных записей.

Поскольку почти все пользователи использовали учетную запись администратора в XP (так как большинство программистов не удосужились заставить свои программы работать с ограниченными учетными записями), Microsoft создала «ограниченную версию» учетных записей администратора, начиная с Vista, в некоторых случаях две версии. "считается как разные пользователи (так как они являются отдельными сессиями).

Попробуйте запустить Windows Explorer с повышенными правами (т. Е. Windows Explorer, запущенный с «Запуск от имени администратора») и заново создайте все сетевые ресурсы, что должно сработать.

Причина пересоздания общих ресурсов объясняется в этой записи блога MSDN:

Подключенные сетевые диски с UAC в Windows Vista

Изменить: соответствующие биты из записи в блоге (выделено мое):

Для упрощения предположим, что вы работаете как администратор с включенным контролем учетных записей (хотя для большей безопасности лучше запускать от имени обычного пользователя). Когда вы входите в систему, вы создаете новый токен. Затем мы обнаруживаем, что у вас включено UAC, мы входим во второй раз и получаем новый (строго ограниченный) токен, который мы используем для запуска оболочки. Есть два отдельных события входа в систему .
(...)
Эта удобная функция облегчает проблемы с подключенными сетевыми дисками. До Windows 2000 SP2 имена устройств оставались глобально видимыми до тех пор, пока они не были удалены явно или система не была перезагружена. По соображениям безопасности мы изменили это поведение, начиная с Windows 2000 SP2. С этого момента,все устройства связаны с идентификатором аутентификации (LUID) - идентификатором, генерируемым для каждого сеанса входа в систему .
(...)
Поскольку эти сопоставленные диски связаны с LUID и поскольку приложения с повышенными правами используют другой LUID, сгенерированный во время отдельного события входа в систему, приложение с повышенными правами больше не будет видеть никаких сопоставленных дисков для этого пользователя.


4
Я использовал Windows Explorer с повышенными правами, а командная строка с повышенными правами все еще не может найти подключенный диск.
icelava

1
Насколько я понимаю, в Windows 7, когда я "Запуск от имени администратора", он фактически не работает как учетная запись с именем "Администратор" (Windows XP-ish), а скорее как моя учетная запись, но с некоторым установленным битом суперпользователя. Тогда я не понимаю, почему есть разница между двумя сценариями, которые я описал.
mindless.panda

1
Разница заключается в том, что две «версии» любых учетных записей администратора для некоторых аспектов работают как разные учетные записи, даже если это действительно одна и та же учетная запись с разными разрешениями (это объясняется в блоге, на который я ссылался).
Альберто Мартинес

1
@ mindless.panda: Вы абсолютно правы. Параметр «Запуск от имени администратора» полностью относится к настройке администратора, связанной с UAC. Это просто не имеет ничего общего с группой администраторов. Если вы отключите UAC (для полного вступления в силу может потребоваться перезагрузка), вы можете обнаружить, что опция «Запуск от имени администратора» даже не существует, пока отключен UAC. Обратите внимание, что в командной строке администратора все равно можно использовать общие диски в качестве UNC, например, \\ servername \ dirname - это просто буквы дисков, которые теряются только потому, что так разработала Microsoft. Переделай их, и все хорошо в этой подсказке.
TOOGAM

Я администратор, я не могу запустить окно
обозревателя с

7

Ответ Альберто Мартинеса описывает, почему подключенный сетевой диск недоступен.

Вот исправление реестра для решения проблемы:

  • Откройте regedit и перейдите к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • Добавьте новое DWORD (32-разрядное) значение с именем EnableLinkedConnections .
  • Установите значение 1 (или 00000001).

Выйдите из программы regedit и перезагрузите компьютер.



1
Это определенно лучшее решение для этой проблемы.
Аликов

1
Не работает на Win10
Кристиан Шефер

или Windows Server 2016
RM

1

Я сопоставляю общий ресурс с другого компьютера, используя мою учетную запись.

этот сетевой диск доступен ТОЛЬКО в учетной записи пользователя, подключенного к сетевому диску.


0

Запустите cmd от имени администратора, введите команду net use z: \\net\path /persistent:yesи все готово. Еще одна вещь, которую я сделал, и которая выходит за рамки вопроса о операции, заключалась в том, что после закрепления cmd на панели задач и в свойствах-> Advanced, установив его для запуска с правами администратора, я добавил / K z: в конец 'target' текстовое поле, так что он стал: %windir%\system32\cmd.exe /K z:. Потому что настройка параметра «Начать с» не работает. Это привело к значку на моей панели задач, который запускает окно cmd от имени администратора и с приглашением на подключенном диске. И не забудьте снова перейти к свойствам и настроить шрифт, цвета, размер и положение окна, а также буфер обратной прокрутки текста и размеры буфера истории команд!


-2

Проверьте сетевой путь и отсоедините подключенный диск (Z :) Запустите CMD от имени администратора, после этого используйте команду «net use», чтобы снова подключить диск. net use Z: \ SharePath, затем попробуйте получить к нему доступ снова.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.