Планировщик заданий Windows не запускает powershell.exe

750
Sean W.

Я инженер по безопасности с опытом администрирования Linux, пытаюсь научиться изучать объекты групповой политики на ознакомительных копиях Windows Server 2016 Preview 5 и Windows 10 Enterprise. Я создал непосредственную задачу для запуска скрипта PowerShell.

Когда задача пытается выполнить, я получаю это предупреждение в окне просмотра событий:

Служба планировщика заданий обнаружила неверную конфигурацию в определении NT TASK \ EMET 5.51. Дополнительные данные: Значение ошибки: powershell.exe.

Все, что я прочитал, говорит о том, что это должно работать. Что я делаю неправильно?

Вот задача в XML:

<?xml version="1.0" encoding="utf-8"?> <ScheduledTasks clsid=""> <ImmediateTaskV2 clsid="" name="EMET 5.51" image="0" userContext="0" removePolicy="0" changed="2016-08-14 19:45:32" uid=""> <Properties action="C" name="EMET 5.51" runAs="BYTHEBIT\Administrator" logonType="InteractiveToken"> <Task version="1.2"> <RegistrationInfo> <Author>BYTHEBIT\Administrator</Author> <Description></Description> </RegistrationInfo> <Principals> <Principal id="Author"> <UserId>BYTHEBIT\Administrator</UserId> <LogonType>InteractiveToken</LogonType> <RunLevel>HighestPrivilege</RunLevel> </Principal> </Principals> <Settings> <IdleSettings> <Duration>PT5M</Duration> <WaitTimeout>PT1H</WaitTimeout> <StopOnIdleEnd>false</StopOnIdleEnd> <RestartOnIdle>false</RestartOnIdle> </IdleSettings> <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy> <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries> <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries> <AllowHardTerminate>false</AllowHardTerminate> <StartWhenAvailable>true</StartWhenAvailable> <AllowStartOnDemand>false</AllowStartOnDemand> <Enabled>true</Enabled> <Hidden>false</Hidden> <WakeToRun>true</WakeToRun> <ExecutionTimeLimit>PT0S</ExecutionTimeLimit> <Priority>7</Priority> <DeleteExpiredTaskAfter>PT0S</DeleteExpiredTaskAfter> </Settings> <Actions Context="Author"> <Exec> <Command>powershell.exe</Command> <Arguments>-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File \\DC\Shared\Deployment\deployment.ps1</Arguments> </Exec> </Actions> <Triggers> <TimeTrigger> <StartBoundary>%LocalTimeXmlEx%</StartBoundary> <EndBoundary>%LocalTimeXmlEx%</EndBoundary> <Enabled>true</Enabled> </TimeTrigger> </Triggers> </Task> </Properties> <Filters><FilterRunOnce hidden="1" not="0" bool="AND" id=""/> </Filters> </ImmediateTaskV2> </ScheduledTasks> 
0
Point the Task Scheduler to **"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"** explicitly and see what happens...this would be in the `C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe` value part of the XML file rather than just the value of `powershell.exe` Let me know if this helps you any. Pimp Juice IT 7 лет назад 0
Кроме того, `\\ uncpath` для скрипта PowerShell может быть недоступен из локальной учетной записи, под которой вы выполняете это задание, попробуйте указать его в виде буквы на локальном сервере / диске диска ПК и убедитесь, что скрипт сохранен там. Или запустить как учетную запись домена с доступом для выполнения к пути UNC, где сохраняется сценарий PS, а не запускать его как локальную учетную запись. Pimp Juice IT 7 лет назад 0
У вас была возможность просмотреть мои предложения в комментариях, чтобы выяснить, решат ли они вашу проблему? Pimp Juice IT 7 лет назад 0
@PIMP_JUICE_IT Извините за очень поздний ответ, я попробовал оба из них, и они также не работали. Хотя несколько раз в журнале событий ничего не появлялось (возможно, из-за редактирования события, которое я пометил как однократный запуск?), Поэтому я мог сделать что-то не так. Sean W. 7 лет назад 0
Поэтому вместо того, чтобы указывать в качестве аргумента в своей задаче `-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File \\ DC \ Shared \ Deployment \ deploy.ps1`, просто удалите все это из аргумента и затем поместите` powershell.exe -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File "\\ DC \ Shared \ Deployment \ deploy.ps1" `в качестве команды и посмотреть, если вы получите другой результат, так что все будет в команде и двойные кавычки вокруг пути unc файл PS1 и без аргументов в планировщике заданий. Pimp Juice IT 7 лет назад 0

0 ответов на вопрос

Похожие вопросы