ВСЕ СИСТЕМЫ РАБОТАЮТ·v0.16.24·AGPL-3.0·TLS · per-device
FREE · 30 устройств
← Все статьи
RMM · 6 МИН ЧТЕНИЯ

PowerShell на парке: безопасный массовый запуск

Редакция GoDesk
28 августа 2026

Массовый запуск скрипта отличается от одиночного одним свойством: ошибка тиражируется мгновенно и на все машины сразу. Поэтому вопрос не в том, как запустить на группе, а в том, каким процессом обставить запуск — пилот, волны, подтверждение, откат.

До запуска

  • Прочитайте скрипт целиком, включая то, что скопировали из интернета. Отдельно найдите все операции удаления и перезаписи.
  • Проверьте, что скрипт идемпотентен: повторный запуск не должен ломать уже настроенное. На массовой раскатке повторный запуск случается всегда — из-за таймаутов, потери связи, ручного перезапуска.
  • Задайте $ErrorActionPreference так, чтобы ошибка останавливала выполнение, а не оставляла машину в половинчатом состоянии.
  • Если в скрипте есть операции изменения, прогоните его с -WhatIf там, где командлеты это поддерживают, и прочитайте, что он собирается сделать.
  • Выясните, от чьего имени скрипт выполняется. Скрипт, работающий от системной учётной записи, не видит пользовательский профиль и переменные окружения пользователя — типичная причина «на моей машине работает».
  • Проверьте политику выполнения скриптов и подписи: то, что запускается на вашей машине, может быть заблокировано на пользовательских.

Разворачивайте волнами

Никогда не на весь парк сразу, даже если скрипт кажется безобидным.

  • Первая волна — одна машина, повторяющая типовую конфигурацию. Проверьте результат руками, а не по коду возврата.
  • Вторая — три-пять машин разных конфигураций. Здесь ловятся различия версий и прав.
  • Дальше — группами с паузой, достаточной чтобы заметить проблему. Пауза важнее размера группы.
  • Машины ответственных сотрудников и всё, что связано с деньгами и отгрузкой, — в последнюю волну.
  • Не запускайте в пятницу вечером и перед отпуском. Это не суеверие: некому будет разбираться.

Часть действий в кабинете требует подтверждения перед выполнением — не отключайте это для массовых операций, даже когда одиночные уже разрешены. Состав раздела удалённых задач — на странице управления парком.

После выполнения

Проверяйте результат, а не факт запуска. Код возврата 0 означает, что скрипт завершился, а не что он сделал то, что задумано.

  • Сверьте выборочно несколько машин руками: изменение действительно применилось.
  • Разберите все машины, где скрипт не выполнился, — они не «отвалятся сами», а останутся в неопределённом состоянии.
  • Зафиксируйте в журнале: что запускали, когда, на каких машинах, с каким результатом.
  • Сохраните версию скрипта, которая была запущена. Через месяц «тот же скрипт» будет уже другим.

Как проектировать сам скрипт, чтобы он был пригоден к массовому запуску — коды возврата, логи, параметры вместо жёстко зашитых значений — разобрано в статье об удалённых задачах на Bash и Python.

ЧАСТЫЕ ВОПРОСЫ

Что делать, если скрипт отработал не на всех машинах?

Не запускать повторно на всём парке, а разобраться с теми, где он не прошёл. Машины, которые были выключены, догонят при следующем включении, а вот те, где скрипт упал с ошибкой, требуют отдельного разбора — повторный массовый запуск просто повторит ошибку.

Как проверить скрипт, если тестовой среды нет?

Сделать первую волну из одной своей машины и работать с ней как с настоящей: посмотреть результат, перезагрузить, проверить на следующий день. Это не заменяет тестовую среду, но ловит большую часть ошибок до того, как они разойдутся по парку.

Удалёнка без таймера.

Бесплатно до 30 устройств, без карты.

↓ Скачать GoDesk
◢ ЧИТАЙТЕ ТАКЖЕ