问题描述:
客户生产Windows(2008R2/2012R2)服务器配置使用定时计划任务进行监控一些任务并进行相关输出,不同服务器的定时计划任务配置用户分别使用了administrator、域账户、本地普通用户,某一天客户修改了配置定时计划任务用户(administrator、域账户、本地普通用户)的密码,修改密码后的第一天,我们发现定时计划任务运行失败,且没有日志,当时没有在意,手动运行了脚本程序。第二天,看到历史记录里面显示,任务启动失败。
原因分析:
经排查发现是系统管理员修改了用户(administrator、域账户、本地普通用户)密码导致定时计划任务运行失败。
每当administrator、域账户、本地普通用户密码更改后,定时计划任务都要同步更新密码,否则定时计划任务会运行失败。
解决方案:
将定时计划任务中的用户账户调整为system解决。
配置:

验证:

步骤:
1.删除原有定时计划任务
2.配置定时计划任务以system运行
命令(仅供参考cmd/powershell运行):
schtasks /create /tn "RunEvery2Min" ^
/tr "C:\scripts\your-script.bat" ^
/sc minute /mo 2 ^
/ru SYSTEM
说明:
/create:创建定时计划任务
/tn "RunEvery2Min":指定唯一识别这个计划任务的名称。
/tr "C:\scripts\your-script.bat":指定在这个计划时间运行的程序的路径和文件名。 例如: C:\windows\system32\calc.exe
/sc minute:以分钟为单位
/mo 2:每 2 分钟执行一次
/ru SYSTEM:使用 SYSTEM 用户运行(无需密码)
可以搭配 /st HH:mm 指定开始时间(可选)
E.g:
schtasks /create /tn "RunEvery2Min" ^
/tr "C:\test.bat" ^
/sc minute /mo 2 ^
/ru SYSTEM
FAQ:
1.通过选择 “使用以下用户账户运行”,无法勾选“无论用户是否登录都要运行”。
Answer:
这是一个 Windows 任务计划程序的限制:
当你手动设置运行账户为某些 非本地账户(例如 SYSTEM、LOCAL SERVICE、NETWORK SERVICE)时,在 图形界面 (GUI) 中,“无论用户是否登录都要运行” 通常是灰色的、无法勾选。
但你仍然可以通过命令行工具 schtasks.exe 成功创建具有以下特性的任务:
1).使用 SYSTEM 用户运行
2).无需用户登录也可运行
3).设置触发器和操作
2.在 Windows 中,以 SYSTEM 用户配置计划任务为什么不需要输入密码
Answer:
SYSTEM(也叫 LocalSystem)是一个内置账户,不允许也不需要密码。
它拥有 最高权限,等同于操作系统本身,不能直接登录,但可以运行服务或计划任务。
使用 schtasks 或任务计划程序 GUI 指定 /ru SYSTEM 或选择 SYSTEM 用户时,系统不会也不能要求密码。
3.怎么配置每2分钟执行一次脚本
Windows 任务计划程序本身 不支持直接设置每 2 分钟执行一次任务(内建频率最小为 5 分钟),但你可以通过以下方式实现每 2 分钟执行一次脚本。
方式一:使用 schtasks + minute + modifier
schtasks 命令允许以分钟为单位配置频率,最小粒度为1分钟。以下命令设置每2分钟执行一次:
命令(仅供参考cmd/powershell运行):
schtasks /create /tn "RunEvery2Min" ^
/tr "C:\scripts\your-script.bat" ^
/sc minute /mo 2 ^
/ru SYSTEM
说明:
/create:创建定时计划任务
/tn "RunEvery2Min":指定唯一识别这个计划任务的名称。
/tr "C:\scripts\your-script.bat":指定在这个计划时间运行的程序的路径和文件名。 例如: C:\windows\system32\calc.exe
/sc minute:以分钟为单位
/mo 2:每 2 分钟执行一次
/ru SYSTEM:使用 SYSTEM 用户运行(无需密码)
可以搭配 /st HH:mm 指定开始时间(可选)
备注:
schtasks帮助:
C:\Users\Administrator>schtasks /?
SCHTASKS /parameter [arguments]
描述:
允许管理员创建、删除、查询、更改、运行和中止本地或远程系统上的计划任
务。
参数列表:
/Create 创建新计划任务。
/Delete 删除计划任务。
/Query 显示所有计划任务。
/Change 更改计划任务属性。
/Run 按需运行计划任务。
/End 中止当前正在运行的计划任务。
/ShowSid 显示与计划的任务名称相应的安全标识符。
/? 显示此帮助消息。
Examples:
SCHTASKS
SCHTASKS /?
SCHTASKS /Run /?
SCHTASKS /End /?
SCHTASKS /Create /?
SCHTASKS /Delete /?
SCHTASKS /Query /?
SCHTASKS /Change /?
SCHTASKS /ShowSid /?
C:\Users\Administrator>
C:\Users\Administrator>schtasks /create /?
SCHTASKS /Create [/S system [/U username [/P [password]]]]
[/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
[/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttime]
[/RI interval] [ {/ET endtime | /DU duration} [/K] [/XML xmlfile] [/V1]]
[/SD startdate] [/ED enddate] [/IT | /NP] [/Z] [/F]
描述:
允许管理员在本地或远程系统上创建计划任务。
参数列表:
/S system

最低0.47元/天 解锁文章
1418

被折叠的 条评论
为什么被折叠?



