0

我已将 Ansible 设置为使用 WinRM 证书方法连接到 Windows Server 2019。我需要将 D 驱动器映射到简单地镜像 C。使用 SUBST 我可以做SUBST D: C:\但是......

  • 当我使用win_shell远程桌面通过 Ansible 运行命令时,不显示驱动器。
  • 反之亦然:当我使用远程桌面运行命令时,Ansible 的 shell 看不到新的 D 盘。
  • 我尝试使用注册表技巧使映射保持不变,重新启动后,我可以在带有远程桌面的文件资源管理器中看到驱动器,但 PowerShell 和 Ansible 都没有win_shell看到它。

如何使用 Ansible 剧本将 C 映射到 D 机器范围?

4

2 回答 2

1

驱动器的注册表值缺少\??\前缀。使用正确的注册表值,一切正常。作为记录,这是我最终完成的 ansible 任务:

    - name: Map D drive to C.
      ansible.windows.win_regedit:
        path: HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices
        name: "D:"
        state: present
        type: string
        data: '\??\C:'
于 2020-10-21T02:32:45.217 回答
1

我不知道你为什么要这样做,但你可以尝试使用工作站服务:

Net use d: \\localhost\c$

您可能遇到的一个问题是该命令必须由使用它的同一用户运行,例如,如果您在提升的管理员 shell 中运行它,您将不会在简单的用户 shell 中看到它。

于 2020-10-20T20:32:48.430 回答