Open
Close

Вимкнення комп'ютера через командний рядок. Вимкнути комп'ютер із командного рядка Команда вимикання комп'ютера windows 7

Більшість користувачів вимикають комп'ютер за допомогою кнопки в меню "пуск". Деякі використовують фізичні кнопки живлення своїх машинах. Дуже небагато людей користуються способом, за допомогою якого можливо вимкнути комп'ютер із командного рядка.

Причиною цього є те, що більшість з нас не знають, що в командному рядку можна використовувати не тільки вимкнення або вихід із системи, але також і вимкнути віддалений комп'ютер, якщо у вас є адміністративний доступ. З такими привілеями можна надіслати повідомлення, що містить причину відключення. Ця посада покаже вам, як це робити.

Перша Ваша дія полягатиме в . На початковому етапі зробіть так, скориставшись одним способом з кількох:

  1. Натисніть клавішу Windows (значок вікна) + R .
  2. У вікні "Виконати" надрукуйте CMD і натисніть OK мишкою або Enter на клавіатурі.

Це дозволить запустити командний рядок. Виконуйте інструкції нижче, залежно від того, що ви хочете зробити.

Вимкнення локального комп'ютера (Вашого)

Тут буде потрібна одна єдина команда shutdown, але при введенні її в такому вигляді у Вас нічого не вийде. Команда використовує свої розширення, а саме префікс S, який вказує на вимкнення пристрою.

Введіть shutdown -sу командному рядку і натисніть Enter, що призведе до тимчасового завершення роботи ПК з попередженням. Якщо використовувати shutdown -p, то комп'ютер вимкнеться миттєво.

Особливістю shutdown є те, що комп'ютер можна вимкнути з командного рядка через певну кількість часу. До команди вище додається префікс t, числова змінна, і вона набуває вигляду shutdown –s -t 300.

Після виконання запускається таймер зворотного відліку та показується попереджувальне повідомлення. Числова змінна (у разі 300) є число секунд, після яких комп'ютер буде вимкнений. Вкажіть свою кількість секунд, виходячи зі своїх потреб.

Для відображення повідомлення, що містить причину вимкнення, використовуйте shutdown –s -t 500 -c "Я втомився. Я не хочу працювати, йду додому"(з лапками) у cmd і натисніть клавішу Enter . Параметр -c використовується в команді, щоб прокоментувати причину відключення і що слід у лапках відображатиметься в діалоговому вікні як пояснення. Це може бути використане для відображення кумедних повідомлень.

Завершення роботи віддаленого комп'ютера

Щоб вимкнути віддалений комп'ютервведіть shutdown-s-m \\ім'я комп'ютера в cmd та натисніть клавішу Enter. Замініть "\\ім'я комп'ютера" на фактичне ім'я віддаленого ПК для спроби вимкнення. Як згадувалося раніше, ви повинні мати доступ адміністратора до комп'ютера, який ви намагаєтеся вимкнути. Щоб дізнатися чи є у вас адміністративні права доступу, натисніть клавіші Windows + R, введіть ім'я комп'ютера, потім натисніть клавішу Enter.

Примітка: якщо Ви не пам'ятаєте ім'я віддаленого комп'ютера, ви можете знайти його, відкривши список усіх підключених ПК, виконавши net view у командному рядку.


Якщо ви можете підключитися до комп'ютера, вам потрібно ввести ім'я користувача та пароль. Увійшовши до них, у вікні буде показаний список усіх директорій, доступних для Вас. Це повинно допомогти дізнатися, чи можна чи не можна вимкнути віддалений комп'ютер.

Використовуйте вираз типу «shutdown -a» для відкату вимкнення. Це призведе до зупинки відключення системи, завершення роботи, якщо зворотний відлік часу не досяг 0.

На цьому все, сподіваюся, урок пішов на користь і Ви вже знаєте, як вимкнути комп'ютер із командного рядка. Ви завжди повинні пам'ятати, що управління від імені адміністратора дає привілеї, а з усім іншим не складає особливих труднощів розібратися!

Іноді в процесі використання комп'ютера виникають ситуації, коли комп'ютер потрібно вимкнути через командний рядок.

Використання shutdown

Варто відразу сказати, що набір команд shutdown досить широкий і дозволяє не просто швидко вимкнути комп'ютер, а перезавантажити його, вимкнути через певний час і виконати інші дії.

Також є команда примусового завершення роботи на випадок, коли решта все-таки відмовляється працювати і комп'ютер все одно перебуває у включеному стані.

Запуск командного рядка

Щоб використовувати shutdown, необхідно запустити командний рядок .

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

Другий шлях полягає в тому, щоб запустити вікно виконання програм шляхом одночасного натискання кнопок Win та R на клавіатурі та ввести туди команду cmd.exe.

Після цього залишиться натиснути Enter на клавіатурі або просто кнопку ОК у тому вікні. Обидва ці способи можна побачити малюнку 1.

Введення інструкцій

  • s – вимкнути комп'ютер;
  • r – перезавантажити комп'ютер;
  • a – припинити вимкнення комп'ютера;
  • f – примусово вимкнути комп'ютер.

Тобто команда простого вимикання комп'ютера виглядатиме так:

shutdown -s

Виглядає введення цієї команди, як показано малюнку 2.

Спеціальні інструкції

Крім усього вищепереліченого, команда shutdown має набір спеціальних інструкцій. Виглядають вони так:

  • i- Виведення на екран довідки про цей набор команд;
  • l- Вихід з даного меню;
  • m \\- Дія з віддаленим комп'ютером;
  • t[час, через який буде вимкнено комп'ютер] – вимкнення через певний проміжок часу;
  • d– код причини вимкнення комп'ютера.

Остання команда вводиться з параметрами коду користувача ( u), коду запланованого завершення ( p), основного коду причини ( XX) та додаткового коду ( yy) у такому форматі:

[u][p]:xx:yy

Що стосується команди управління віддаленим комп'ютером, то приклад її введення виглядатиме приблизно так: якщо мова йде про введення ip-адреси -

shutdown -m \ 192.168.1.1;

якщо комп'ютер підключений і відомо його ім'я –

shutdown –m \\komp1.

Команда вимкнення через певний проміжок часу вводиться приблизно так:

shutdown -t 25 .

Це означає, що комп'ютер вимкнеться через 25 секунд. Опис усіх цих команд можна побачити, якщо викликати довідку, що робиться командою

shutdown -i.

Можна вводити відразу цілий набір команд в тому самому рядку.

Наприклад, щоб вимкнути комп'ютер з IP-адресою 192.165.3.4 через 45 секунд, необхідно ввести наступне:

shutdown –s –t 45 –m 192.165.3.4.

На малюнку 3 показано, як виглядає введення цих інструкцій.

Ці команди можна вводити через тире (- ), а й через слеш (/ ). В цьому випадку все виглядатиме ось так.

Інший варіант введення команд

Усі перелічені команди можна вводити у командний рядок, а й у вікно виконання програм.

Вище наводиться інструкція, як через нього запустити командний рядок, але робити це не обов'язково.

Команду shutdown разом з іншими інструкціями також можна вводити у вікно виконання програм.

Щоб її запустити, як і раніше, потрібно одночасно натиснути кнопки Win і R на клавіатурі. А далі можна ввести ті самі команди, які були перераховані вище.

Наприклад, введення команди для примусового виключення виглядатиме ось так.

Сюди також можна вводити складніші інструкції, приклад яких було наведено вище.

Такий варіант введення має деякі переваги.

Наприклад, у командному рядку користувач не побачить, як відбувається процес відключення через певний проміжок часу – він просто пройде та машина вимкнеться.

Але якщо ввести команду для завершення роботи через, наприклад, 60 секунд, на екрані з'явиться вікно з таймером, який і почнеться з 60 секунд і йтиме за спаданням, поки не досягне позначки 0 (нуль) секунд і не вимкнеться.

Приклад такого вікна показано малюнку 6.

Крім того, у вікні виконання програм автоматично відображатимуться команди, які користувач вводив раніше.

Простим наведенням курсору однією з них можна ввести її знову. Все це виглядає приблизно так, як показано на малюнку 7.

Важливо розуміти, що перервати роботу інструкцій з вимкнення неможливо простим закриттям такого вікна.

Як згадувалося вище, для цього є спеціальна команда s hutdown -а. Тільки вона може припинити вимкнення.

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

Наочне використання інструкцій, пов'язаних з shutdown, показано у відео нижче.

Розробником операційної системи 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 дуже просто. Робиться це за два кроки:


Результатом виконаних дій стане відкриття вікна консолі. Виглядає приблизно однаково всім версій Windows.


Викликати консоль у Віндовс можна й іншими способами, але всі вони складніші і можуть відрізнятися у різних версіях операційної системи. Описаний вище спосіб є найпростішим та універсальним.

Варіант 1: Вимкнення локального комп'ютера

Для вимкнення комп'ютера з командного рядка використовується команда shutdown. Але якщо просто набрати її в консолі, вимкнення комп'ютера не станеться. Натомість буде виведено довідку щодо використання цієї команди.


Уважно вивчивши довідку, користувач зрозуміє, що для вимкнення комп'ютера необхідно використовувати команду shutdownз параметром [s]. Рядок, набраний у консолі, має виглядати так:

shutdown /s

Після її введення слід натиснути клавішу Enterі розпочнеться процес вимкнення системи.

Варіант 2: Використання таймера

Ввівши в консолі команду shutdown /s, користувач побачить, що вимкнення комп'ютера все ще не почалося, а натомість на екрані з'явилося попередження про те, що комп'ютер буде вимкнений через хвилину. Так це виглядає у Windows 10:


Це пояснюється тим, що така затримка у часі передбачена у цій команді за умовчанням.

Для випадків, коли комп'ютер потрібно вимкнути негайно, або з іншим часовим інтервалом, у команді shutdownпередбачено параметр [t]. Після введення цього параметра також необхідно вказати часовий інтервал у секундах. Якщо комп'ютер необхідно вимкнути негайно, його значення встановлюється рівним нулю.

shutdown /s /t 0

У цьому прикладі комп'ютер буде вимкнено через 5 хвилин.


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


Це повідомлення буде періодично повторюватися із зазначенням часу, що залишився до вимкнення комп'ютера.

Варіант 3: Вимкнення віддаленого комп'ютера

Однією з переваг вимикання комп'ютера за допомогою командного рядка є те, що в такий спосіб можна вимкнути не лише локальний, а й віддалений комп'ютер. Для цього в команді shutdownпередбачено параметр [m].

При використанні цього параметра обов'язковим є вказівка ​​мережного імені віддаленого комп'ютера або його IP-адреси. Формат команди виглядає так:

shutdown /s /m \\192.168.1.5

Як і у випадку з локальним комп'ютером, для вимкнення віддаленої машини можна використовувати таймер. Для цього потрібно до команди додати відповідний параметр. На прикладі нижче віддалений комп'ютер буде вимкнено через 5 хвилин.

Для вимкнення комп'ютера, що знаходиться в мережі, на ньому має бути дозволено віддалене керування, а користувач, який буде робити цю дію, повинен мати права адміністратора.

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.
  • Здатність швидко вирішувати проблеми, що виникають, і забезпечувати стабільну і безперебійну роботу системи.
Перевірте себе на вступному тесті і дивіться докладніше програму.