Я пытался заставить Server 2008 R2 перезагрузиться после того, как все ушли с работы, чтобы установить его обновления, но то, что я пытался, очевидно, не работает.
У меня есть "reboot.bat" в C: /, который содержит:
выключение –r –f –t 5
Задача запланирована на 23:00, но когда я прихожу на следующий день, там написано «Результат последнего запуска: (0x1)». и сервер не перезапустился.
Есть лучший способ сделать это? Надеюсь, что сработает ...?
да, настройте запланированную задачу на запуск независимо от того, вошел ли пользователь в систему или нет и настроен на запуск с наивысшими привилегиями. В разделе "Действия" установите действие "запустить программу" с C:\Windows\System32\shutdown.exe
а потом /r /f /t 5
в качестве аргументов.
Убедитесь, что учетные данные, используемые для задачи, имеют Log on as Batch Job
прав.
Это один раз? Если это так, вам, вероятно, сойдет с рук только shutdown
команда; не требуется запланированная задача.
Например, для перезапуска через 12 часов (или 43200 секунд):
shutdown -r -t 43200
К сожалению, это работает не во всех версиях; Server 2003 и Vista ограничивают вас 600 секундами (10 минутами). Для всех версий с тех пор и, как ни странно, для XP максимальное значение составляет 315359999 секунд (~ 10 лет).
Это противоречит Microsoft документы по команде в котором указано, что максимальная задержка составляет 600 секунд на всем пути до Server 2012.