SHUTDOWN - команда выключения и перезагрузки Windows. Автоматическое выключение компьютера




Разработчиком операционной системы Windows предусмотрена возможность по расписанию. Как таковой, кнопки выключения с указанием параметров не существует. Для этого нужно воспользоваться командной строкой и другими штатными (встроенными) средствами Windows . Этот способ особенно хорош тем, что работает всегда и везде, поскольку разработан и предусмотрен непосредственно самим разработчиком операционной системы. Проверено на Windows XP, Windows 7, Windows 8.1

Кому не интересна теория, могут сразу перейти в разделы:
-
-

Выключение или перезагрузка компьютера по расписанию
(в заданное время) штатными (встроенными) средствами Windows

по расписанию
(в заданное время) из командной строки (MS DOS)

С незапамятных времён, в комплект поставки всех операционных систем семейства MS Windows входит дисковая операционная система (сокращённо - MS DOS ), которая не имеет привычного пользовательского интерфейса для «бацанья» по нём мышкой. Управление MS DOS производится методом клавиатурного введения набора текстовых команд в специальном окне, в так называемой командной строке . Командная строка работает на любом компьютере, находящимся под управлением любой модификации операционной системы MS Windows.

В операционной системе MS Windows , из командной строки можно сделать абсолютно все, на что только способна эта система.

Командную строку можно вызвать одним из способов:

  • нажать комбинацию клавиш Win+R , ввести cmd.exe , нажать ОК
  • «Меню Пуск > Выполнить», ввести cmd.exe , нажать ОК
  • «Меню Пуск > Все программы > Стандартные > Командная строка»

В любом случае, откроется окно MS DOS
(командная строка для ввода текстовой команды)
Именно в ней (в командной строке) мы будем:

  1. включать и выключать обратного отсчёта ДО
    выключения или перезагрузки компьютера
    (т.е. указывать, через сколько времени произвести действие)
  2. назначать и отменять точное ДЛЯ
    выключения или перезагрузки компьютера
    (т.е. указывать, когда именно произвести действие)

Все манипуляции сводятся к обращению к файлу shutdown.exe
и указанию нужных параметров

Параметры и синтаксис команды shutdown
(для обращения к файлу shutdown.exe)

Файл shutdown.exe отвечает за выключение операционной системы Windows , её перезагрузку и т.д. Для получения перечня параметров запуска файла shutdown.exe из командной строки - жмём сочетание клавиш Win+R , в открывшемся окне вводим cmd.exe (переходим в MS DOS) и уже в DOS-овском окне (вручную) вводим «shutdown /? » (без кавычек). Жмём «OK» (клавиша «Enter»). В ответ система выдаст полный перечень параметров команды shutdown :

Что касается синтаксиса параметров для команды shutdown , то MS DOS понимает оба варианта записи - и через дефис (знак минус «- » на цифровой клавиатуре) и через слеш (косую черту на цифровой клавиатуре):

  1. shutdown /s /f /t 2000 равносильно shutdown -s -f -t 2000
  2. at 23:15 shutdown /r /f равносильно at 23:15 shutdown -r -f

В нашем случае, принципиальной разницы между слешем и дефисом нет. Гораздо важнее помнить о расстановке пробелов (space). Поскольку, в понимании операционной системы, слеш равен дефису с пробелом , то без пробела - может не работать.

Для примера, на скриншоте вверху, я по очереди вводил команды «shutdown-? » и «shutdown -? », а также «shutdown/? » и «shutdown /? ». Ответ системы очевиден.

Упрощённый ввод команды shutdown
(окно «Выполнить»)

Чтобы включить или выключить таймер обратного отсчёта - открываем окно «Выполнить» (Win+R ОК .

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

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

Реакция системы на команду выключить или перезагрузить компьютер через 33мин = 2000 секунд
Реакция системы на команду по отмене команды на выключение или перезагрузку компьютера

За 10 минут до выполнения задачи, система начинает напоминать об скором окончании обратного отсчёта. Форма напоминания может иметь несколько вариантов. Наверное, зависит от версии Windows и стиля оформления.

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

Установка из командной строки
точного времени текущей даты
для выключения и перезагрузки компьютера

Установка точного времени текущей даты из позволяет назначить точное время текущей даты для выключения или перезагрузки компьютера. Такая задача будет выполнена только ОДИН раз, после чего процедуру назначения задачи нужно будет повторить. Если нужно, чтобы компьютер систематически выключался по расписанию (в одно и то же время), то тогда нужно использовать или

Чтобы установить точное время текущей даты для выключения или перезагрузки компьютера - открываем окно «Выполнить» (Win+R ), вводим нужную команду и жмем ОК .

Время выключения (перезагрузки) компьютера нужно вводить в указанном формате.
Значения времени, естественно - у каждого своё.

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

Из командной строки удобно создавать ОДНОРАЗОВОЕ задание для выключения или перезагрузки компьютера. Если требуется систематическое выключение компьютера по расписанию (например - в заданное время, в конце рабочего дня), то тогда нужно установить время выключения через или через

Выключение и перезагрузка компьютера
с помощью исполнительного (пакетного) файла

Исполнительные (пакетные) файлы с расширением .bat () значительно облегчают работу с командной строкой. Единожды создав такой bat-файл с текстом нужной команды, можно выполнять её простым кликом по батнику, без утомительного вызова окна командной строки и ввода в него текста команды.

Вспомним список наших команд и создадим соответствующие батники:

  1. shutdown /s /f /t 2000 или shutdown -s -f -t 2000
    (выключить компьютер через 33мин = 2000 секунд)
  2. shutdown /r /f /t 2000 или shutdown -r -f -t 2000
    (перезагрузить компьютер через 33мин = 2000 секунд)
  3. at 23:15 shutdown /s /f или at 23:15 shutdown -s -f
    (выключить компьютер сегодня, в 23:15)
  4. at 23:15 shutdown /r /f или at 23:15 shutdown -r -f
    (перезагрузить компьютер сегодня, в 23:15)
  5. shutdown /a или shutdown -a
    (отменить команду на выключение/перезагрузку компьютера)

Чтобы создать исполнительный (пакетный) батник - открываем блокнот, копируем (пишем) в него нужную строку команды и сохраняем файл с расширением.bat. Для примера создадим два файла - файл «Выключение.bat» и файл «Отмена.bat». В первый файл запишем строку «shutdown /s /f /t 2000 » (без кавычек), во второй - строку «shutdown /a » (без кавычек). Клик по первому файлу будет давать команду на выключение компьютера через 33мин = 2000 секунд. Клик по второму файлу будет отменять команду на выключение компьютера через 33мин = 2000 секунд. Таким образом, мы получим два файла, кликая по которым будем иметь тот-же эффект, что и в случае вызова со вводом в неё нужной команды.

Все очень просто, и - это гораздо удобнее, чем командная строка. К тому-же, этот способ даёт простор для полёта фантазии и творческой мысли. Например, можно задать таймаут в 28800 сек. (28800 сек = 8 часов = длина рабочего дня), положить файл «Выключение.bat» в папку автозагрузки компьютера и уже не беспокоиться о его выключении в конце рабочего дня. Потому что, каждый раз, при загрузке системы, она будет получать команду на своё выключение через 8 часов = 28800 сек. Тот же эффект даст исполнительный.bat-файл в автозагрузке, с содержанием «at 17:00 shutdown /s /f » (без кавычек). При чем, эта команда даже предпочтительней, поскольку устанавливает точное время выключения компьютера и не зависит от количества перезагрузок в течение рабочего дня.

Прикол. Если задать в bat-файле, в папке автозагрузки, таймаут 180 сек., то тогда - комп будет выключаться через 3 мин после своего запуска.

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

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

Чтобы настроить выключение или перезагрузку компьютера в заданное время через планировщик заданий - открываем планировщик заданий. Он находится в «Меню Пуск > Все программы > Стандартные > Служебные > Планировщик заданий»

Затем, в открывшемся окне пишем имя задачи и её описание. Здесь можно писать все, что душе угодно. Имя задачи и её описание будет потом отображаться в средней колонке планировщика после создания задачи. Я написал имя - «Выключение», описание - «Выключить компьютер» и нажал кнопку «Далее»...

В следующем открывшемся окне нужно выбрать периодичность выполнения задачи. Я выбрал - «Ежедневно». «Далее»...

В следующем открывшемся окне нужно указать дату, с которой начать выполнение задачи и время её выполнения. По-умолчанию, отсвечивают текущие значения даты и времени. Дату можно оставить без изменения (начать сегодня), а вот время нужно поставить своё. Это будет требуемое время выключения компьютера. Я поставил 17:00:00, что соответствует окончанию моего рабочего дня. Строку «Повторять каждые 1 дн.» - оставил без изменения. «Далее»...

В следующем открывшемся окне нужно установить переключатель (чекбокс) против слов «Запустить программу». «Далее»...

В следующем открывшемся окне, в строке «программа или сценарий» вводим команду «shutdown » (без кавычек), а в поле «добавить аргументы» «-s -f » (без кавычек) - для выключения. Если нужно перезагрузить компьютер, то тогда в поле «добавить аргументы» вводим «-r -f » (без кавычек). «Далее»...

Жмём кнопку «Готово». Задача на ежедневное выключение компьютера в 17:00 - создана и запущена. Проверить работу или удалить задание можно следующим образом. Запускаем планировщик, нажимаем на «Библиотека планировщика заданий» и в среднем столбике находим нужное задание (по имени). Правой кнопкой мышки кликаем по нему и в выпадающем меню выбираем нужное.

Для проверки я кликнул на «Выполнить». Компьютер отреагировал мгновенно. Работает, ура!

Выключение компьютера
Выключение компьютера из командной строки

Для ускорения работы за компьютером всегда полезно применять быстрые клавиши, которые сильно экономят время. Это относится не только к Windows XP и 7, но и к более современным продуктам — Windows 10. Поэтому существую интересные способы управления системой через командную строку. Интересный факт, что подобный интерфейс не устаревает даже в Windows 10, так как некоторые вещи всё-таки долговечны. В этой статье мы рассмотрим вопрос отключения системы через эту лаконичную в своём дизайне командную строку. Самое приятное, что таким методом можно отключать компьютеры не только в непосредственной близости, но и через удалённые элементы управления.

Можно использовать любое заданное время. При этом способ настолько универсальный, что подходит для всех систем от XP до 10 поколения включительно. Настроить подобный сервис может каждый, тем более, что такое выключение очень популярно для тех людей, которые часто желают выключить компьютер после просмотра сериала или загрузки фильмов перед сном. Очень удобно, когда уже давно спишь, а система сама выключается в заданное время.

Код запуска

Чтобы выключить свой компьютер через интересный интерфейс – командную строку, необходимо выполнить ряд последовательных действий:

  • Первым делом нужно запустить командную сроку в системе. Обычно она обозначается в поиске как Cmd.

  • Откроется окно с чёрным фоном, где требуется набрать: shutdown /s /t 60. Данный код означает, что выключение компьютера состоится через одну минуту.

Как не сложно догадаться, заданное время устанавливается последовательностью /t 60. Существуют и другие ключи, которые помогают настроить автоотключение:

  • /L – это автоотключение с последующим выходом из текущего пользователя.
  • /f – это автоотключение с последующим закрытием всех работающих программ в системе Windows.

Удалённое завершение работы

Автоотключение есть возможность настроить и через систему удалённого управления компьютера. Для этого нужно прописать другой код:

  • shutdown /s /t 60 /f /L /m \\192.168.1.55

Также после /m можно прописывать и имя компьютера. Например, если компьютер называется USER, то код изменяется:

  • shutdown /s /t 60 /f /L /m \\USER

Платформы

Такое выключение работает во всех версиях Windows: это может быть устаревшая Windows XP и лелеющая в последнее время надежду на совершенство Windows 10. Дело обстоит так, что автоотключение через скромный интерфейс – командную строку – это базовая работа с системой. В ней нет необходимости настраивать графическую оболочку, не нужно делать внешний вид модным и современным. Простое чёрное окно на рабочем столе компьютера отлично решает все текущие проблемы, если знать базовые коды. Поэтому не важно XP или 10 система установлена на машине, команды, которые зашиты в ядре операционной системы, могут быть легко выполнены через командную строку всё теми же методами, какими это делалось раньше. Кстати, время идёт, а более быстрое автовыключение даже в Windows 10 пока не разработано.

(Visited 2 354 times, 1 visits today)

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

Перед этим лакомым способом, я для напишу в общем случае, как выключить компьютер, дабы сделать эту статью пожирнее.

Как выключить компьютер под управлением любой ОС

Я думаю, не нужно объяснять, как выключать компьютер через меню Пуск, операционной системы. Те, кто пользуется операционками на ядре Linux, скорее всего тоже знают, как это сделать. Но всё же поясню.

Вы нажимаете меню Пуск, выбираете раздел «Выключение» или значок, означающий выключение, как на Windows 10, и там найдете несколько параметров, отвечающий за отключение ПК, перезагрузку, сон и гибернацию.

Есть интересный момент, которым грешат многие пользователи. Недобросовестные отключают компьютер или ноутбук с помощью кнопки выключения, которая отвечает за принудительное выключение. Но зачем так делать? Неужели вы хотите потерять несохраненные данные. Многие программы со временем могут вообще не запуститься из-за таких манипуляций. Если ваш компьютер спокойно выключается через Пуск, то делайте именно так.

Зачем выключать ПК, не надо

Все вы знаете, о таких функциях, как спящий режим и гибернация. При спящем режиме текущее состояние системы переносится в оперативную память, а компьютер переходит в режим пониженного энергопотребления, при этом вы можете очень быстро вывести компьютер из сна и продолжить работу. Режим гибернации еще круче. Он переносит текущее состояние системы на жёсткий диск и компьютер полностью выключается, тем самым вообще не потребляя энергии. После включение всё возвращается в исходное состояние. Недостатком этого способа является то, что создается , который может занимать достаточно много места. Поэтому нужно первоначально позаботиться о повышении объема системного раздела, либо увеличения его с помощью специализированного софта.

Нужны дешевые боты Вконтакте? Покупайте их на сайте https://doctorsmm.com/ . Здесь Вы получите огромнейший выбор всевозможных условий и критериев к данной услуге, которые позволят Вам сделать не только недорогое приобретение, но и действительно полезное. Добавленные страницы будут работать, а не висеть мертвым грузом, снижая рейтинг страницы.

Выключение компьютера с помощью CTRL+ALT+DEL

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

На планшетах, хоть и нет клавиатуры (хотя на некоторых всё же есть) можно зажимать некоторые клавиши, для появления этого окошка.

Еще вы можете быстро заблокировать Windows (если у вас стоит пароль или PIN-код), что делается нажатием клавиш Win+L , а потом выключить ПК.

Ну и известная комбинация Alt+F4 . Думаю не надо объяснять, что это.

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

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

А вот мы перешли к лакомому кусочку. В этой части я расскажу, как выключить компьютеры, связанные по локальной сети. Допустим, вы студент ил школьник и сидите на уроке информатике, и тут вам захотелось пошалить и выключить все ПК в классе. Что же для этого нужно сделать?

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

arp –a


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

Зайдите в каталог «Этот компьютер» и слева перейдите в раздел «Сеть» . Возможно, сверху появится сообщение о включении общего доступа, подтвердите это.



Снова открываете командную строку, желательно от имени администратора. Кстати, утилита PowerShell тоже работает, можете использовать её, если хотите. Вводим такую простую команду:

shutdown –i

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

Также снимаем галочку с «Запланированная остановка» . После этого нажимаем ОК и радуемся.

Помимо этого, вы можете в командной строке ввести командную на отключение ПК напрямую. Вот, как это будет выглядеть:

shutdown -s -t 30 -m \ИМЯ-ПК

Вместо числа 30 (время в секундах), вы можете указать абсолютно любое значение, либо вообще убрать переменную «-t», чтобы компьютер выключился сразу. Вместо имени вы можете ввести IP-адрес ПК, который хотите отключить.

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

В нашей жизни могут возникнуть ситуации, когда нам необходимо срочно отлучиться от компьютера, который невозможно сразу выключить по различным причинам. Для решения этого и подобных ему вопросов существует команда shutdown, позволяющая выключить компьютер через запланированное время, перезагрузить его, ввести в режим , осуществить выход из нашей учётной записи и многое другое. В данном материале я расскажу о shutdown - команде выключения и перезагрузки ОС Windows, опишу особенности её ключей, а также поясню, как удобнее использовать указанную команду при работе с вашим компьютером.

Предназначение SHUTDOWN

Большинство пользователей выключает свой компьютер с помощью стартового меню, с помощью меню через Alt+F4, или просто нажав на кнопку питания ПК.

Альтернативой этому может стать команда shutdown (перевод с англ. «shutting down» - выключение). Функционал данной команды позволяет выключить ваш компьютер (как сразу, так и через некоторое время), перезагрузить его, ввести в режим гибернации, выйти из учётной записи. Также, задать особенности выключения в специальном графическом окне, совершить другие действия, позволяющие кастомизировать процесс выключения ПК под нужды конкретного пользователя.

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

Как использовать SHUTDOWN

Вы можете активировать shutdown как с помощью классической командной строки, так и используя инструментарий «PowerShell». Также вы можете упростить работу с командой, создав ярлык для её запуска на рабочем столе.

Чтобы начать работу с командой (нажмите на кнопку «Пуск», в строке поиска введите cmd, и нажмите ввод). Рекомендую запускать командную строку от имени администратора по видео:

Функционал команды shutdown выглядит следующим образом:

Из всей обоймы ключей я бы отметил следующие:

shutdown /a – команда останавливает процесс выключения или перезагрузки. Может быть полезна в ситуации, когда служба обновления Виндовс (Windows Update) решила перезагрузить ваш компьютер (или когда вы или какие-либо сторонние программы запустили процесс перезагрузки);

shutdown /s – команда выключения ПК;

shutdown /r – команда перезагрузки PC;

shutdown /g – функционал ключа похож на shutdown /r (компьютер перезагружается), при этом вновь запускаются все зарегистрированные приложения;

shutdown /h – ввод компьютера в режим гибернации;

shutdown /l – выход из учётной записи текущего пользователя (log off);

shutdown /p – выключение компьютера без соответствующих предупреждений. Равноценна команде shutdown /s /f /t 0.

Команда SHUTDOWN - примеры реализации

Давайте рассмотрим популярные примеры использования команды shutdown:

Пример №1. Выключаем питание компьютера немедленно

В командной строке наберите:

shutdown /s /t 0

Наберите команду с указанными ключами в командной строке

Пример №2. Выключаем питание компьютера с задержкой

В командной строке используйте команду:

shutdown /s /t 3600 (3600 – это время в секундах, в данном примере это 60 минут, т.е. один час). Вместо 3600 поставьте любое удобное для вас время, высчитав его показатель в секундах;

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

shutdown /r /t 0

Пример №4. Переводим ПК в режим гибернации

Введите - shutdown /h/t 0

Пример №5. Завершаем сеанс текущего пользователя

Пример №6. Останавливаем выключение компьютера

Если вы передумали выключать компьютер, или хотите воспрепятствовать такому выключению со стороны системы, то наберите в командной строке:

Пример №7. Перезагружаем удалённый компьютер по IP-адресу

shutdown /r /m \\192.168.0.1

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

Пример №8. Выключаем удалённый компьютер по его сетевому имени

shutdown /s /t 300 /m \\COMP1

Команда выключает питание сетевого компьютера COMP1 через 5 минут (300 секунд).

Пример №9. Запускаем графическую утилиту showdown

После запуска на экране появится табличка «Диалог удалённого завершения работы».

С помощью кнопки «Добавить» необходимо указать IP-адрес или имя нужного компьютера, выбрать желаемое действие, а затем заполнить форму «Примечание» (данный текст будет выводиться в предупреждении о выполнении запланированного вами действия).

Пример №10. Перезагружаем ПК с восстановлением работы зарегистрированных приложений

Автоматизируем процесс с помощью создания ярлыков

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

Для осуществления этой операции выполните следующее:


Заключение

Команда shutdown позволяет выполнять необходимые операции для выключения и перезагрузки вашего компьютера. Если же функционал данного инструмента вас не устроил, тогда можно обратиться к возможностям таких программ как «Таймер выключения», «Time PC», «Shutdown Scheduler» и других аналогов, позволяющих выключить ПК в заданное вами время.

35,421 Просмотры

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

Причем выключать по сети нужно как windows серверы, так и linux различных дистрибутивов — ubuntu, centos, freebsd. То есть решение должно быть простое и надежное.

Дистанционное выключение Windows сервера

Начнем с самого сложного. На практике реализовать надежный способ выключения windows машин по сети для меня оказалось сложнее, чем linux. Методов и подходов к решению данной задачи много. Я пробовал разные варианты и остановился на одном, который мне показался самым надежным, он сработал без проблем во всех случаях во время тестирования.

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

Принцип работы удаленного отключения следующий:

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

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

Итак, идем на север и создаем там простой bat файл следующего содержания:

Shutdown /p /d p:0:0 /f

Сохраняем файл и создаем пользователя, под которым будем выключать сервер. Не забудьте добавить этому пользователю разрешение подключаться по rdp. Если вы выключаете компьютер с десктопной системой, то прав обычного пользователя достаточно. Если же вам надо погасить Windows Server, то пользователя нужно либо сделать админа, либо дать ему права на разрешение выключение сервера через локальную политику безопасности. Живет эта политика по адресу — параметры безопасности — локальные политики — назначение прав пользователей — завершение работы системы.

Вот тут я напоролся на первые неприятности. Я назвал свой скрипт shutdown.bat и очень долго не мог понять, почему он не срабатывает. При вводе команды shutdown с параметрами в консоли все отлично работало, но скрипт не запускался. Оказывается, его нельзя называть таким именем. После того, как переименовал в shut.bat, все отлично заработало. Какая-то нелепая загвоздка, но мне пришлось потратить немало времени, пока я разобрался, в чем тут дело.

Дальше заходим нашим новым пользователем, чтобы создались стандартные папки профиля и кладем скрипт автовыключения сервера ему в автозагрузку — C:\Users\shut-user\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Теперь нам нужно настроить автоматический вход пользователя по rdp, чтобы выполнить удаленное завершение работы. Причем пользователь должен заходить на сервер без запроса имени и пароля. Штатными средствами rdp клиента windows это сделать невозможно. Даже если вы сохраните параметры, то при переносе настроек на другой компьютер нужно будет снова вводить пароль. Мне это не подходило.

Я пробовал использовать старую портированную версию rdp 5.2. Это последняя версия, где пароль в зашифрованном виде можно было хранить в файле настроек. Но при переносе этого файла на другой компьютер, все равно выскакивало окно с вводом пароля. Добиться полного автоматизма не получалось.

Но решение было найдено. Существует любопытный проект Remote Desktop Plus , который является надстройкой над rdp. С помощью этой надстройки можно передать параметры в rdp через командную строку, в том числе и имя пользователя с паролем. Мне это полностью подходит. Скачиваем файлик либо с сайта автора проекта, либо с моего. Я скопировал на всякий случай эту очень полезную утилиту. Кладем его в папку и создаем в этой же папке rem-shut.bat файл следующего содержания:

Rdp.exe /v:10.10.5.14 /u:shut-user /p:pass123 /w:640 /h:480

Всего этого достаточно, чтобы выполнить дистанционное завершение работы на windows сервере. Пользователю необходимо передать 2 файла:

  • rdp.exe
  • rem-shut.bat

Важно, чтобы они лежали в одной папке. При запуске батника произойдет подключение rdp пользователя и выполнится скрипт завершения работы. Задача выполнена.

Удаленное выключение linux сервера

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

Подготовим все необходимое. Сначала создаем простой текстовый документ shutdown.txt следующего содержания:

Putty.exe -m shutdown.txt -ssh -P 22 -l root -pw rootpass 10.10.5.15

Передаем пользователю 3 файла, сложенные в одну папку:

  • putty.exe
  • shutdown.txt
  • serv-rem-shut.bat

Теперь при запуске скрипта serv-rem-shut.bat серверу по сети будет отправлена консольная команда на завершение работы. При этом не будет задано никаких вопросов. Сервер просто молча выключится.

Заключение

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

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

Онлайн курс по Linux

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:
  • Знание архитектуры Linux.
  • Освоение современных методов и инструментов анализа и обработки данных.
  • Умение подбирать конфигурацию под необходимые задачи, управлять процессами и обеспечивать безопасность системы.
  • Владение основными рабочими инструментами системного администратора.
  • Понимание особенностей развертывания, настройки и обслуживания сетей, построенных на базе Linux.
  • Способность быстро решать возникающие проблемы и обеспечивать стабильную и бесперебойную работу системы.
Проверьте себя на вступительном тесте и смотрите подробнее программу по.