【发布时间】:2020-10-20 19:05:37
【问题描述】:
我已将 Ansible 设置为使用 WinRM 证书方法连接到 Windows Server 2019。我需要将 D 驱动器映射为简单地镜像 C。使用 SUBST 我可以做 SUBST D: C:\ 但是...
- 当我使用
win_shell使用 Ansible 运行命令时,远程桌面不显示驱动器。 - 反之亦然:当我使用远程桌面运行命令时,Ansible 的 shell 看不到新的 D 盘。
- 我尝试使用registry tricks 使映射保持不变,重新启动后,我可以在远程桌面的文件资源管理器中看到驱动器,但 PowerShell 和 Ansible 的
win_shell都看不到它。
如何使用 Ansible playbook 在机器范围内将 C 映射到 D?
【问题讨论】:
-
当您在“HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\DOS 设备”中定义“D:”驱动器链接时,您是针对卷设备“\??\C:”还是根目录 "\??\C:\"?它应该是最大兼容性的音量设备; subst.exe 不能这样做。为了增加措施,我还将其设为明确的全局设备路径,例如"\GLOBAL??\C:".
-
但是请记住,这不是在挂载点管理器中注册的规范驱动器,因此
GetFinalPathNameByHandleW等 API 函数仍将解析为“C:”驱动器。 -
@ErykSun 我错过了 `\??` 前缀。感谢您提供有用的 cmets。
标签: windows powershell ansible subst