Выключение компьютера по расписанию windows server

Содержание
  1. Команда Shutdown: выключение и перезагрузка Windows из командной строки
  2. Выключение Windows командой Shutdown
  3. Перезагрузка Windows
  4. Завершение сеанса пользователя
  5. Перевод компьютера в режим гибернации
  6. Перезагрузка компьютера с сообщением пользователям
  7. Отложенное выключение / перезагрузка компьютера
  8. Отмена выключения / перезагрузки компьютера
  9. Перезагрузить компьютер немедленно
  10. Запуск команды shutdown на удаленных компьютерах
  11. Графический интерфейс команды shutdown
  12. Ярлык для перезагрузки компьютера
  13. Блог IT для Windows
  14. Как выключить компьютер по расписанию
  15. Выключаем компьютеры по окончании рабочего дня
  16. На всю компанию от помощницы генерального директора пришло письмо с текстом на всех сотрудников компании:
  17. Я же как руководитель IT отдела знаю, что ни один вменяемый сотрудник компании ни когда не будет следовать данному прошению от генерального директора. Это же надо выключать компьютер, а потом когда пришел на рабочее место, включать и ждать пока он загрузится и заново ожидать покуда все необходимые для работы программы загрузятся. А я для себя воспринял текст данного письма, как призыв к действия — что мне нужно проработать данную задачу и распространить ее на все компьютеры компании. В связи с прошлой модернизацией контроллера домена уровня Server 2003 На Server 2008 R2 я получил возможность управлять рабочими станциями, как Windows XP так и Windows 7 которые присутствуют в моем подчинение. А имея опыт работы в крупных компаниях, я уже на подобие такого делал и поэтому для меня данная задача не представляет какую либо трудность. Рабочее время сотрудников варьируется , кто-то приходит в 07 утра и заканчивает в 19, но вот для каждого делать несколько политик ну уж нет, раз рабочий день с 07 утра до 21.00, то время в которое мне нужно все компьютеры выключить будет 21.30. А там если надо то компьютер можно включить обычным нажатием.

Команда Shutdown: выключение и перезагрузка Windows из командной строки

Утилита командной строки shutdown является встроенной командой Windows, которая позволяет перезагрузить, выключить компьютер, перевести его в спящий режим или завершить сеанс пользователя. В этой инструкции мы покажем основные примеры использования команды shutdown в Windows (все рассмотренные команды запускаются в окне Выполнить — Win+R ->, в командной строке cmd.exe или в консоли PowerShell).

Команда shutdown имеет следующий синтаксис:

shutdown [/i | /l | /s | /sg | /r | /g | /a | /p | /h | /e | /o] [/hybrid] [/soft] [/fw] [/f] [/m \\компьютер][/t xxx][/d [p|u]xx:yy [/c «комментарий»]]

Как вы видите, у команды довольно много опций, а также есть возможность выполнять операции выключения/перезагрузки на удаленном компьютере.

Выключение Windows командой Shutdown

Для выключения ОС Windows и компьютера необходимо использовать команду shutdown с ключом /s.

Перезагрузка Windows

Чтобы перезагрузить компьютер, необходимо добавить параметр /r. После выполнения этой команды Windows корректно перезагрузится.

Завершение сеанса пользователя

Чтобы завершить текущую сессию пользователя (logout), нужно выполнить команду:

Эта команда аналогично выполнению команды logoff.

Перевод компьютера в режим гибернации

Для перевода компьютер в режим гибернации (в этом режиме все содержимое памяти записывается в файл hyberfil.sys на диск и компьютер переходит в спящий режим с пониженным электропотреблением), выполните команду:

Перезагрузка компьютера с сообщением пользователям

Вы можете предупредить всех пользователей Windows о предстоящем выключении / перезагрузки компьютера или сервера, отправив сообщение во все активные сессии (как правило эта возможность используется на терминальных RDS серверах, за которыми одновременно работают несколько пользователей, каждый в своей собственной RDP сессии).

shutdown /r /c “Этот сервер будет перезагружен через 60 секунд.”

Отложенное выключение / перезагрузка компьютера

Можно выключить или перезагрузить компьютер с определенной задержкой (по таймеру). С помощью опции /t можно указать интервал времени (в секундах), через который ПК/сервер будет перезагружен или выключен. Тем самым вы можете предоставить пользователям дополнительное время для того, чтобы успеть сохранить открытые файлы и корректно закрыть приложения. Эту опцию удобно использовать совместно с отправкой сообщения. В этом примере мы указываем, что Windows будет выключена через 10 минут (600 секунд) и информируем пользователей сообщением.

Читайте также:  Запрошенная операция требует привилегий суперпользователя linux mint

shutdown /s /t 600 /c «Сервер будет выключен через 10 минут. Сохраните свои документы!»

Пользователю будет выдано предупреждение о запланированном выключении: Ваш сеанс будет завершен.

Если задержка очень длительная, например, 100 минут (6000 секунд), то вместо предупреждающего окна появляется всплывающее сообщение в нижнем правом углу экрана: «Ваш сеанс будет завершен. Работа Windows будет завершена через 100 мин».

Отмена выключения / перезагрузки компьютера

После запуска команды выключения или перезагрузки Windows, по умолчанию утилита shutdown ожидает 60 секунд, не выполняя никаких действия. Администратора может отменить перезагрузку или выключение устройства, если в течении этого времени успеет выполнить команду:

После отмены выключения появится всплывающее сообщение в нижнем правом углу экрана: «Выход из системы отменен. Запланировано завершение работы отменено».

Перезагрузить компьютер немедленно

Чтобы выключить или перезагрузить компьютер немедленно, не ожидая стандартные 60 секунд, нужно указать значение 0 для параметра /t. Например, для немедленной перезагрузки компьютера:

Очень важный ключ /f. Я использую его практически всегда при выключении или перезагрузки серверов Windows. Данный атрибут обеспечивает принудительное завершение всех запущенных программ и процессов, не ожидая подтверждения от пользователя (не будем же мы ждать подтверждения закрытия программ от всех пользователей на терминальном сервере, его можно просто не дождаться).

Следующая команда выполнит перезагрузку компьютера с автоматическим запуском всех зарегистрированных приложений после перезагрузки (имеются в виду приложения, зарегистрированные в системе с использованием функции API RegisterApplicationRestart).

Запуск команды shutdown на удаленных компьютерах

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

shutdown /r /t 120 /m \\192.168.1.100

Если все указанные условия выполняются, но при выполнении команды shutdown появляется ошибка ”Отказано в доступе (5)”, на удаленном компьютере нужно разрешить удаленный доступ к административным ресурсам (C$, ADMIN$), изменив значение параметра LocalAccountTokenFilterPolicy на 1.

reg add «HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System» /v «LocalAccountTokenFilterPolicy» /t REG_DWORD /d 1 /f

Если вам необходимо удаленно перезагрузить множество компьютеров, их список можно сохранить в текстовый файл и запустить удаленную перезагрузку всех компьютеров с помощью такого PowerShell скрипта:

$sh_msg = «Ваш компьютер будет автоматически перезагружен через 10 минут. Сохраните свои файлы и закройте запущенные программы»
$sh_delay = 600 # секунд
$computers = gc C:\PS\PC-list.txt
foreach ($comp in $computers)
<
& ‘C:\Windows\System32\SHUTDOWN.exe’ «-m \\$comp -r -c $sh_msg -t $sh_delay»
>

Графический интерфейс команды shutdown

Для тех, кому не комфортно работать в командной строке, есть графический интерфейс для команды shutdown, чтобы его вызвать, наберите:

Как вы видите, в диалоге удаленного завершения работы вы можете добавить несколько компьютеров, которые нужно перезагрузить/выключить, указать текст уведомления и задать причину выключения для сохранения в журнале Windows.

Ярлык для перезагрузки компьютера

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

Если вы хотите, чтобы ваш компьютер или сервер всегда выключался / перезагружался в определенное время, вы можете добавить команду shutdown с определенными параметрами в планировщик заданий Windows taskschd.msc.

Например, следующее задание планировщика будет ежедневно перезагружать компьютер ночью в 0:00.

Блог IT для Windows

Все про Windows, программное обеспечение, информационную безопасность, программирование

Как выключить компьютер по расписанию

Рассмотрим вариант автоматического выключения компьютера, с помощью планировщика заданий на примере сервера Windows 2008 R2.

Читайте также:  Не удалось проверить ваши учетные данные windows

Создайте текстовой документ с названием shutdown.

Скопируйте в него, ниже приведённый код:

shutdown.exe -s -t 00

Сохраните данный файл с расширением .bat.

Далее, откройте на компьютере Планировщик заданий (найти его можно в строке поиска).

Поскольку выключение на сервере уже настроено ранее, рассматривать будет его.

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

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

На следующем шаге необходимо создать и настроить триггер.

В данном примере задача будет выполняться по определённым дням и в определённое время.

Получится должно так.

Далее, необходимо создать (изменить) Действие:

Действие: Запуск программы

Программа или сценарий: путь к вашему сохранённому файлу shutdown.bat

Созданное (изменённое) действие будет выглядеть следующим образом:

Далее необходимо создать и настроить Условия выполнения задания.

На последнем шаге настраиваем Параметры задания.

В итоге готовое задание должно выглядеть в планировщике заданий следующим образом.

Выключаем компьютеры по окончании рабочего дня

На всю компанию от помощницы генерального директора пришло письмо с текстом на всех сотрудников компании:

Напоминаю Вам о необходимости выключать компьютеры по окончанию рабочего дня

Я же как руководитель IT отдела знаю, что ни один вменяемый сотрудник компании ни когда не будет следовать данному прошению от генерального директора. Это же надо выключать компьютер, а потом когда пришел на рабочее место, включать и ждать пока он загрузится и заново ожидать покуда все необходимые для работы программы загрузятся. А я для себя воспринял текст данного письма, как призыв к действия — что мне нужно проработать данную задачу и распространить ее на все компьютеры компании. В связи с прошлой модернизацией контроллера домена уровня Server 2003 На Server 2008 R2 я получил возможность управлять рабочими станциями, как Windows XP так и Windows 7 которые присутствуют в моем подчинение. А имея опыт работы в крупных компаниях, я уже на подобие такого делал и поэтому для меня данная задача не представляет какую либо трудность. Рабочее время сотрудников варьируется , кто-то приходит в 07 утра и заканчивает в 19, но вот для каждого делать несколько политик ну уж нет, раз рабочий день с 07 утра до 21.00, то время в которое мне нужно все компьютеры выключить будет 21.30. А там если надо то компьютер можно включить обычным нажатием.

Подключаюсь к Домен Контроллеру и запускаю оснастку управления групповыми политиками:

Start — Control Panel — Administrative Tools — оснастка: Group Policy Management

после разворачиваем до уровня структуры Active Directory текущего домена : Group Policy Management — Forest: polygon.local — Domain — Polygon.local,

здесь создаем новую политику (Советую на каждую задачу создавать свою политику, так проще отслеживать что не работает и что работает) с именем, как обычно я именую все свои политики: через правый клик мышью на polygon.local → Create a GPO in this domain, and Link it here → GPO_Shutdown, т. к. политика у меня будет назначена на конкретные компьютеры (в последствии можно создать группу компьютеров и прилинковать ее к создаваемой политики), поэтому на вкладке Scope раздела Security Filter удаляем все, а назначаем имя вашей тестовой (пока) рабочей станции (в моем случае это W7X86) на которой будем тестировать работоспособность групповой политики, а позже уже добавим боевые компьютеры.

Теперь переходим к настройки данного шаблона групповой политики, на политике GPO_Shutdown через правый клик выбираем свойство → Edit и редактируем настройки ориентированные на компьютер (Computer Configuration)

GPO_Shutdown → Computer Configuration — Preferences — Control Panel Settings — Scheduled Tasks → далее правый клик на пустом месте справа, New → Scheduled task и приводим создаваемое задание к следующему виду:

Читайте также:  Conky manager kali linux

Arguments: /s /c «ekonomim energy» /d p:0:0

Отмечаем пункт: Run As

User Name: POLYGON\ekzorchik

Confirm Password: 712mbddr@

отмечаем пункт: Enable (scheduled task runs at a specified time)

, где учетная запись ekzorchik — это учетная запись которая обладает правами «Администратора домена».

После переходим на вкладку: Schedule где указываем когда создаваемое задание прописанное групповой политикой на компьютерах локальной сети организации будет приведено в действие — мне нужно каждый день в 21.30

Scheduled Task: Daily

Start Time: 23:10:00 PM

Schedule Task Daily: Every 1 days

После нажимаем Apply и Ok и закрываем оснастку управления групповыми политиками.

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

Если задействуем утилиты psshutdown то нужно, чтобы на рабочей станции был доступ, в противном случаем увидим сообщение в консоли:

Make sure that the default admin$ share is enabled on W7X86.

Проверяем на рабочей станции W7X86 что после перезагрузки политика успешно назначилась и в планировщике задания создалось задание столь необходимой важности:

(В представленных скриншотах у меня фигурирует время 23:19 это время когда я писал заметку и тестировал, но на работе у меня время точно соответствует времени об окончании рабочего дня для всех сотрудников: 21:30)

Пуск — Панель управления — Администрирование — Планировщик Заданий

C:\Users\alektest.POLYGON>gpresult /r

если же политики в выводе выше нет, то принудительно подгружаем ее:

C:\Users\alektest>gpupdate

Обновление политики пользователя завершено успешно.

Обновление политики для компьютера успешно завершено.

Перезагружаем рабочую станцию.

Если же ее и после этого нет, то значит у Вас скорее всего проблемы в домене, к примеру время на сервере и на рабочих станциях различно, к примеру не установлено обновление: Windows6.1-KB2998527-x86.msu

Как только наступило назначенное время рабочая станция успешно перезагружается.

Что и требовалось, есть несколько моментов, а именно нет возможность контролировать, а отработало ли задание и сколько рабочих станций по заданию выключились. Исходя из этого если будет такая задача, то нужно будет писать скрипт и учитывать все параметры, а так данная заметка успешно применяется у меня, проверил ее на многих рабочих местах и результат положителен. Внимательный читатель может спросить, а как узнать что система была выключена по политики, а вот как в журнале рабочей станции по соответствующей работе формируется код (он же Event ID). Вот к примеру изменил время выключения, после рабочая станция выключилась, включил ее и вот сообщение с каким произошло выключение.

Пуск — Панель управления — Администрирование — Просмотр событий — Журналы Windows — Система

Код события (Event ID): 1074

Дата: 07.10.2015 23:55:00

Но не заходить же на каждую станцию и проверять, а отработало ли задание — можно конечно же и так, к примеру поручить сотрудникам сделать выборочную проверку. А вообще можно и по другому, к примеру у Вас поднят сервис централизованного логирования (к примеру LogAnalyzer) и уже в нем, произвести сортировку по данному Event ID коду. Да может это все не зачем, все существующие компьютеры в домене Вы знаете и они же также стоят у Вас в инвентаризации, как это сделано у меня через GLPI. Надеюсь я этой заметкой помог не только себе, но и многим другим в решение аналогичной задачи. На этом все, с уважением автор блога — Олло Александр.

Оцените статью