我在 Windows 10 机器上遇到了一件非常奇怪的事情。
我有一个 Windows 服务,设置为手动启动。我编写了一个脚本,用于在桌面上启动该服务。基本上就是这样net start
。
当我注销然后重新登录时,服务会自动启动。我使用的是“ForceAutoLogon”,它会让我从登录屏幕直接返回到 Windows,但它不会影响运行相同服务的其他 Windows 10 计算机。
这怎么可能?以前有人见过这样的事情吗?Windows 或服务中是否有一些设置可以保留服务的状态?
答案1
事件查看器用于记录每个服务启动的信息(https://stackoverflow.com/a/496675/704977),但显然不再如此。
相反,您应该能够使用安全模板工具审核特定服务的安全性:http://windowsitpro.com/systems-management/access-denied-auditing-users-who-might-be-starting-and-stopping-services
- 打开多媒体存储并添加一个管理单元。
- 选择安全模板管理单元并将其添加到控制台。
- 创建新模板并命名。
- 打开新模板,双击系统服务查看计算机上的服务列表。
- 双击有问题的Oculus服务,点击启用在模板中定义此策略设置。
- 点击编辑安全性。
- 点击先进的。
- 点击审计。
- 点击添加。
- 点击选择校长, 确保从此位置设置为你的电脑,输入每个人,然后点击好的。
- 选择开始、停止和暂停在下面基本权限。
- 点击好的。
现在您将右键单击模板并保存它。
接下来,将安全配置和分析管理单元添加到控制台,打开(或创建)一个数据库,并将刚刚创建的模板导入数据库。
现在,当对象名称是您正在跟踪的服务的简称时,您将能够在安全日志中查找事件 ID 560,表示审核成功,并且记录的访问包括发送到该服务的启动和停止命令。
答案2
这是一个错误(或 Windows 中的隐藏设置)。我有一个服务,我只能从设置为手动的命令行启动它,但如果我在关机时它正在运行,Windows 会启动它。这可能是由令人讨厌的快速启动功能引起的,它会保存 PC 状态并且不会正确重新启动。我相信微软强迫用户这样做是为了阻止 Linux 和 Windows 10 双启动系统。