高架的命令行提示符无法访问共享驱动器


62
  1. 我使用用户帐户映射了另一台计算机上的共享。
  2. 我启动提升权限的命令提示符(cmd.exe,右键单击,以管理员身份运行)。
  3. 导航到共享驱动器(Z :)将导致:

The system cannot find the drive specified

现在,如果我打开一个非提升的命令提示符,则可以导航到Z:很好。


Answers:


47

以管理员身份打开Windows资源管理器并重新创建网络共享对我不起作用。然后,我找到了解决方案:在命令提示符本身上创建共享。它为我工作。

net use f: \\remoteserver\subfolder      

即使驱动器已经在Windows资源管理器中映射,它仍然可以工作。

注意:仅在子文件夹前使用单个反斜杠


25

可能这不是文件权限问题,但与以下内容有关:

  • 网络共享与会话关联(即,不同的用户可能具有不同的网络共享集)。请注意,一个用户可以有多个会话。
  • 用户帐户控制的工作方式。

由于几乎所有用户都在XP中使用了管理员帐户(因为大多数程序员都不想让程序使用受限帐户工作),因此Microsoft从Vista开始制作了“受限版本”的管理员帐户,在某些情况下,这是两个“版本”计为不同的用户(因为它们是单独的会话)。

尝试启动提升的Windows资源管理器(即使用“以管理员身份运行”启动的Windows资源管理器),然后重新创建所有网络共享,这可以解决问题。

此MSDN博客条目中说明了必须重新创建共享的原因:

Windows Vista上使用UAC映射的网络驱动器

编辑:来自博客条目的相关位(重点是我的):

为简化起见,假设您以启用了UAC的管理员身份运行(尽管为了安全起见,最好以标准用户身份运行)。登录时,您将创建一个新令牌。然后,我们检测到您已启用UAC,第二次登录,最后得到一个新的(高度受限)令牌,该令牌用于启动外壳程序。有两个单独的登录事件
(...)
此便利功能使您更容易遇到映射的网络驱动器问题。在Windows 2000 SP2之前,设备名称始终保持全局可见,直到将其明确删除或重新启动系统为止。出于安全原因,我们从Windows 2000 SP2开始修改了此行为。从现在开始,所有设备都与身份验证ID(LUID)关联-身份验证ID是为每个登录会话生成的
(...)
因为这些映射的驱动器与LUID关联,并且由于提升的应用程序使用在单独的登录事件期间生成的其他LUID,所以提升的应用程序将不再看到该用户的任何映射驱动器。


4
我使用了提升的Windows资源管理器,提升的Command提示符仍然找不到映射的驱动器。
icelava 2011年

1
我的理解是,在Windows 7中,当我“以管理员身份运行”时,它实际上不是以名称为“管理员”的帐户(Windows XP-ish)运行,而是以我的帐户但设置了一些超级用户身份运行。我不明白为什么我描述的两种情况之间没有任何区别。
mindless.panda 2012年

1
有所不同是因为某些方面的任何管理员帐户的两个“版本”都可以用作不同的帐户,即使它们实际上是具有不同权限的同一帐户(在我链接的博客中对此也有解释)。
阿尔贝托·马丁内斯

1
@ mindless.panda:你绝对正确。“以管理员身份运行”选项完全是指与UAC相关的管理员设置。它与Administrators组完全无关。如果禁用UAC(可能需要重新启动才能完全生效),则可能会发现在禁用UAC的情况下,“以管理员身份运行”选项甚至不存在。请注意,管理员命令提示符仍可以将共享驱动器用作UNC,例如\\ servername \ dirname-只是迷失了驱动器号,仅仅是因为Microsoft就是这样设计的。重制它们,在该提示下一切正常。
TOOGAM 2015年

我是管理员,我无法启动提升状态的浏览器窗口(Win 8)
user15507

7

Alberto Martinez的答案描述了为什么无法访问映射的网络驱动器。

这是解决问题的注册表修复程序

  • 打开regedit并转到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • 添加一个名为EnableLinkedConnections的新DWORD(32位)值。
  • 将值调整为1(或00000001)。

退出regedit并重新启动计算机。



1
这绝对是解决此问题的最佳方法。
alecov

1
在Win10上不起作用
ChristianSchäfer18年

或Windows Server 2016
RM

1

我使用用户帐户映射了另一台计算机上的共享。

该网络驱动器仅在映射该网络驱动器的用户帐户中可用。


0

以管理员身份启动cmd,输入命令即可net use z: \\net\path /persistent:yes。我做过的另一件事是,将cmd固定在任务栏上,然后在properties-> Advanced中将cmd固定为任务以管理员身份运行,然后在/ target之后添加了/ K z ::文本框,因此变成:%windir%\system32\cmd.exe /K z:。因为设置“开始于”参数似乎无效。这导致任务栏上的图标以admin身份启动cmd窗口,并在映射的驱动器上显示提示。并且不要忘记再次进入属性并自定义字体,颜色,窗口大小和位置,以及文本回滚缓冲区和命令历史记录缓冲区的大小!


-2

验证您的网络路径,然后断开映射的驱动器(Z :)的连接。以管理员身份运行CMD,在此位置使用“ net use”命令再次映射驱动器。净使用Z:\ SharePath,然后尝试再次访问它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.