Перезагрузка сервера через командную строку и планировщик задач

Иногда сервера необходимо перезагружать, например, для установки обновлений. В рабочее время, зачастую, сделать это не возможно по причине того, что пользователи работают с сервером и прерывать их работу не вариант. Конечно, можно или задержаться на работе или прийти раньше для выполнения перезагрузки… Но гораздо проще и удобнее запланировать перезагрузку через диспетчер задач.

Для начала рассмотрим, как перезагрузить (или выключить) систему через командную строку. В этом нам поможет утилита shutdown.exe. Не будем рассматривать все возможные параметры использования, их можно посмотреть запустив программу из консоли с параметром /? или просто без параметра, рассмотрим набор параметров, который использую я.

shutdown.exe /r /f /t 90 /d p:2:16 /c "Перезапуск для установки обновлений"

в данном случае:

/r — перезагрузка сервера

/f — принудительное закрытие всех приложений.

/t 90 — время ожидания до начала перезагрузки 90 сек.

/d p:2:16 — указание причины перезагрузки, которая отобразиться в системном журнале. В данном случае, мы указали:
p — запланированная перезагрузка, 2:16 — «Операционная система: Установка пакета обновления (Запланировано)»

/c «Перезапуск для установки обновлений» — комментарий в свободной форме длинной не более 512 символов.

Итак, после выполнения данной строки на экране появится окно с указанным нами комментарием.

Пока идет указанное нами время ожидания, есть возможность прервать запуск перезагрузки в случае необходимости выполнив shutdown.exe /a в командной строке.

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

Таким образом, если за серверами следят несколько Администраторов, у них не будет вопросов почему сервер перезагружался.

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

Обратите внимание, что путь я преобразовал через системную переменную:

%SYSTEMROOT%\System32\shutdown.exe

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

Созданную задачу можно устанавливать на определенные дату/время с повторением или без по вашему желанию. Система будет перезагружена в назначенное время и в системном журнале останется соответствующая запись.

Разумеется, вы можете экспортировать созданную задачу в xml-файл и использовать как шаблон при создании подобной задачи на другом сервере вашей сети.

Следует также отметить, что таким же образом можно перезагрузить (или выключить) удаленный компьютер, если использовать параметр /m \\ИМЯ_КОМПЬЮТЕРА.

Утилита Shutdown имеет и оконный интерфейс, для этого утилиту следует запустить с ключом /i

Данный диалог позволяет выполнить перезагрузку на компьютерах сети (AD) без использования командной строки.

Статьи в тему:

Shutdown (technet)
Перезагрузка или завершение работы удаленного компьютера и документирование причины

 

 

Comments are closed