填坑日记:管理员权限下cmd无法访问网络驱动器本地映射盘符

新发现:普通权限建立的网络驱动器本地映射盘符,居然对管理员权限无效。

坑的描述 普通权限建立的网络驱动器本地映射盘符,对管理员权限无效
根本原因 windows会话机制
填坑进度 基本解决

问题描述:

临时需要编译一些东西,物理开发环境牵扯到的东西比较多,不想因为这个小事动到太多配置,索性搭个虚拟机来做。虚拟机配好后,将物理机硬盘共享到虚拟机里面使用时,偶然发现了这个问题:将若干个网络位置映射到本地盘符(在windows窗口中配置,而不是通过命令行配置),管理员权限的cmd无法访问,普通权限能访问。

建立磁盘映射之后,不同权限的cmd可访问的情况不同

原因分析:

  1. 在物理机简单验证,亦会重现。根据上述的情况,基本可以排除虚拟机的影响。
  2. 根据搜索到的几篇文章,一般认为在非管理员权限下建立的映射,系统上与管理员会话不同,且实际上并不互通。参考文章的链接在本文最后附上。
  3. 微软提供了一种通过修改注册表,试图让管理员与非管理员在网络位置映射的会话互通的方法,在虚拟机win7 32位的环境下实测无效,尚未作进一步研究。

解决方案:

尝试在命令行中,用管理员权限重新建立映射,之后管理员权限就可以访问该盘符。
使用管理员权限重新建立映射
相关命令解释如下:

[css]net use 本地盘符 网络位置[/css]

遗留问题:

仅当前有效,重启后管理员权限仍然无法访问网络位置映射。

参考文章:

  1. Windows 7及以上操作系统无法访问网络位置的问题
  2. 解决Windows服务无法访问网络映射盘的问题

二零二一年四月五日

顾毅写于厦门