Окружающая среда
Я пытаюсь развернуть сценарий PowerShell Startup или Shutdown ActiveDirectory в тестовом подразделении для обновления VLC Media Player, и я не могу понять, почему Powershell не работает.
я использую Эта статья в качестве шаблона, в частности, трюк с запуском powershell.exe
в качестве имени сценария, а параметры ниже - в качестве параметров сценария для обхода политики выполнения.
Они настраиваются с помощью групповой политики> Конфигурация компьютера> Политики> Параметры Windows> Сценарии (запуск / завершение работы) в объекте групповой политики под названием «Развертывание сценариев Active Directory»:
%windir%\System32\WindowsPowerShell\v1.0\powershell.exe
-NonInteractive -ExecutionPolicy Bypass –NoProfile -File "%~dp0Update_VLC.ps1"
Update_VLC.ps1
был сохранен в соответствующем \Machine\Scripts\
папки и соответствующая группа безопасности компьютера имеет для нее разрешения на чтение и выполнение. Кажется, что объекты групповой политики настроены правильно, потому что:
gpresult
о клиенте сообщаетНастройки
Политики
Настройки Windows
Скрипты
Запускать
Имя | Параметры | Последний запуск | Порядок скриптов в GPO | Победа в DPO
%windir%\System32\WindowsPowerShell\v1.0\powershell.exe
|-NonInteractive -ExecutionPolicy Bypass -NoProfile -File "%~dp0Update_VLC.ps1"
|21/07/2020 2:47:10 PM
|Not configured
|Deploy Active Directory Scripts
psexec -i -s cmd.exe
для устранения неполадок на клиенте, запустив сценарий из того же места в контексте учетной записи LocalSystem компьютера, с которой он работает.Я также пробовал запустить .cmd
как файл сценария для запуска команды powershell. В .cmd
сам файл выполняется, но вызов PowerShell внутри него завершается сбоем, даже при перенаправлении вывода в файл.
Любые советы приветствуются.
РЕДАКТИРОВАТЬ: обновление.
Я получил это для работы с .cmd
файл все-таки (опечатка в моем оригинале .cmd
) с вызовом:
%windir%\System32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -ExecutionPolicy Bypass -NoProfile -File %~dp0Update_VLC.ps1
Похоже, что это не работает с теми же аргументами, которые были введены для название и Параметры в Скрипты (запуск / выключение) следующим образом:
Имя сценария: %windir%\System32\WindowsPowerShell\v1.0\powershell.exe
Параметры скрипта: -NonInteractive -ExecutionPolicy Bypass –NoProfile -File %~dp0Update_VLC.ps1
В том, что я использую, может быть опечатка, которую я не вижу (если это так, я был бы признателен, если бы кто-нибудь мог указать на это). Или прямой подход, предложенный в ссылка на сайт (в отличие от использования командного сценария Windows) не работает. Рад за отзывы по любому из них.