我创建了一个新的 AWS Windows 2016 Server 实例并为其提供通过用户数据执行的脚本。
该脚本首先创建一个 Windows 服务,创建一个新的管理员用户,授予用户“作为服务登录”权限,并将用户作为“以用户身份登录”分配给该服务。
系统设置完成后,我登录并执行此服务应响应的操作(它访问远程网络共享上的文件),但它什么也没做。甚至我的自定义日志都没有生成。该服务就像不存在一样。它正在运行,并且新用户已分配给它。但什么也没发生。
然后,当我重新启动服务时,它就开始完美运行。我的假设是,当服务在启动时启动时,它正在其他会话中运行,而不是我登录的会话中。
我也尝试过自动和自动(延迟)启动类型。我无法使用 LocalSystem 运行它,因为我需要使用它访问远程资源。我不知道这是怎么回事!
答案1
令人惊讶的是,在脚本中,启动服务后我立即停止并再次启动服务(中间有几秒钟的睡眠间隔),它开始工作了。很奇怪,但确实如此!