Для перезагрузки, завершения сеанса, выключения или перевода в спящий режим в Windows используется встроенная утилита командной строки shutdown. Использовать ее можно как в графическом интерфейсе планировщика задач Windows, так и через PowerShell. Рассмотрим оба варианта.
С помощью GUI
Для того, чтобы настроить автоматическую перезагрузку или выключение вашего удаленного сервера, необходимо добавить команду shutdown в планировщик задач Windows. Открыть планировщик можно следующим образом:
- С помощью комбинации клавиш Win + R откройте утилиту «Выполнить»
- В открывшемся окне введите taskschd.msc
В планировщике задач нажмите «Создать простую задачу…». Поле «Имя» является обязательным для заполнения. Рекомендуем присваивать понятные имена, чтобы вы впоследствии не путались. Поле «Описание» опционально.
Далее укажите желаемый график запуска задачи автоматической перезагрузки - ежедневно, еженедельно, ежемесячно и т.д. Затем укажите дату и время.
Следующим шагом в качестве действия для задачи выберите «Запустить программу». Чтобы указать приложение shutdown.exe, введите полный путь к нему:
C:\Windows\System32\shutdown.exe
Обязательно стоит добавить следующие аргументы:
- /r — перезагрузка
- /f — принудительное закрытие всех приложений
Проверяем, верно ли указаны все условия задачи и завершаем настройку.
С помощью PowerShell
Для управления задачами в планировщике через PowerShell используется модуль ScheduledTasks. Он имеет много командлетов, которые можно просмотреть таким образом:
Get-Command -Module ScheduledTasks
Для создания задания планировщика нужно использовать командлеты New-ScheduledTaskTrigger и Register-ScheduledTask.
В Powershell мы должны создать каждый из объектов (результат команд) планировщика отдельно, после чего объединяем их с помощью одной команды.
Всего можно выделить четыре объекта:
- Action (Действие) - определяет, что мы должны запустить.
- Trigger (Триггер) - событие при котором должно запуститься действие. Может быть привязано ко времени или каким-то процессом в системе.
- Settings (Настройки) - дополнительные условия обработки задач.
- Security Options (Параметры безопасности) - определяют привилегии и пользователя от имени которого будут запущены задания.
Последние два объекта заполнять не обязательно, потому что они имеют значения по умолчанию. Для простоты создания задания вы можете просто скопировать этот пример:
$Trigger= New-ScheduledTaskTrigger -At 00:00am -Daily
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "shutdown.exe" -Argument "-r -f"
Register-ScheduledTask -TaskName "Reboot" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force
Если задание успешно создано, появится надпись Ready. А проверить его можно в консоли планировщика задач в разделе «Библиотека».
Теперь ваш сервер на Windows будет перезагружаться автоматически!