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

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

  • автор:

Записки IT специалиста

Админу на заметку — 17. Как выключить или перезагрузить компьютер через RDP

  • Автор: Уваров А.С.
  • 27.11.2015

rdp-shutdown-000.jpgУдаленный доступ к рабочему столу по протоколу RDP широко используется для работы не только с серверами, но и с рабочими станциями, как для удаленной работы, так и в целях администрирования. Однако есть некоторые ограничения, в частности в среде клиентской ОС нельзя управлять параметрами питания, даже имея права локального администратора. В некоторых случаях это способно взывать затруднения, поэтому если вы до сих пор не знаете, как выключить или перезагрузить клиентскую версию ОС через RDP — эта статья для вас.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

rdp-shutdown-001.jpg

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

rdp-shutdown-002.jpg

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

Но как показывает практика, умеют это не все. Ничего страшного в этом нет, как говорил мой школьный учитель: спросить — стыд минуты, не знать — стыд всей жизни.

Графическая оболочка

На самом деле «проблема» решается не просто, а очень просто. Выйдя на рабочий стол достаточно нажать Alt+F4 чтобы получить стандартный диалог завершения работы.

rdp-shutdown-003.jpg

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

rdp-shutdown-004.jpg

Беда в том, что этого экрана через RDP вы уже не увидите. Да и открытые приложения — это полбеды, хуже, когда систему не дает выключить или перезагрузить зависшее приложение. В этом случае придется искать иные методы.

Командная строка

Как обычно, если графические инструменты не помогают, на помощь администратору приходит командная строка. Для того, чтобы управлять питанием компьютера с ее помощью не надо обладать особыми знаниями, достаточно запомнить одну простую команду. Нажмите Win+R или Пуск — Выполнить и введите следующие команды:

rdp-shutdown-005.jpg

Разберем ключи команды подробнее:

  • s — выключение компьютера
  • r — перезагрузка
  • f — принудительное завершение мешающих перезагрузке процессов
  • t — время, через которое завершение работы будет выполнено, указывается в секундах через пробел. Если данный параметр не используется команда будет выполнена через 60 секунд.

Утилита PsShutdown от Sysinternals

Если штатные возможности вас по какой-либо причине не устраивают, то можно воспользоваться альтернативой — утилитой PsShutdown от Sysinternals. Разместите скачанный файл в любом удобном месте, лучше всего в одном из указанных в переменной PATH, либо добавьте туда ее расположение, это позволить запускать ее по короткому имени, без указания пути. Синтаксис утилиты похож на синтаксис стандартной, но есть некоторые отличия, так для выключения выполните:

а для перезагрузки:

Поясним используемые ключи:

  • k — выключение системы
  • r — перезагрузка
  • f — принудительное завершение процессов
  • t — время выполнения команды

Если вместо ключа -k использовать для выключения ключ -s, то система завершит работу без выключения питания, старожилы должны хорошо помнить:

rdp-shutdown-006.jpg

Кроме того, данная утилита позволяет управлять питанием других ПК по сети. Если честно, то работать по сети умеет и штатная утилита shutdown, достаточно указать ключ:

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

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

Данная команда выполнит перезагрузку удаленного ПК computer использовав для подключения имя username и пароль password. Следует помнить, что указанный вами пользователь должен иметь права доступа к административному ресурсу ADMIN$. В среде Active Directory этим правом обладает администратор домена, а вот в одноранговой сети могут возникнуть затруднения.

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

rdp-shutdown-007.jpg

Это свидетельствует о том, что данный пользователь не имеет доступа к ресурсу ADMIN$. Чтобы его включить нужно выполнить два условия: включить общий доступ к файлам и принтерам

rdp-shutdown-008.jpg

А затем в ветвь реестра

добавить параметр типа DWORD с именем

и установить его значение равным 1. После этого компьютер потребуется перезагрузить.

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

rdp-shutdown-009.jpg

Как видим в этот раз команда отработала успешно.

PowerShell

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

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

А для перезагрузки:

Ключ -Force в данном случае аналогичен ключу -f команды shutdown и предполагает принудительное завершение работы мешающих выключению приложений.

Также PowerShell можно использовать для управления питанием по сети, например, можно выключить удаленный ПК командой:

  • ComputerName — имя удаленного компьютера, допускается перечисление нескольких имен через запятую
  • Credential — имя учетной записи для аутентификации в удаленной системе

При этом работа через PowerShell более безопасна, так как пароль не вводится открытым текстом и не остается в истории команд. Для аутентификации используются стандартные механизмы ОС.

rdp-shutdown-010.jpg

Как видим, для управления питанием в ОС Windows доступны самые разнообразные инструменты — на любой вкус и цвет. При этом все они доступны внутри терминальной сессии, какой из них использовать — дело личного вкуса и предпочтений.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

date10.01.2023
useritpro
directoryPowerShell, Windows 10, Windows 11, Windows Server 2019, Windows Server 2022
commentsкомментариев 13

В Windows доступно несколько команд, которые позволяют выключить или перезагрузить локальный или удаленный компьютер. В этой статье мы рассмотрим, как использовать команду shutdown и PowerShell командлеты Restart-Computer и Stop-Computer для выключения/перезагрузки Windows.

Использование команды 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 «комментарий»]]

команда shutdown синтаксис

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

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

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

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

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

shutdown /r - перезагрузка компьютера

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

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

shutdown /l завершение сенаса пользоватеоя

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

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

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

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

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

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

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

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

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

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

shutdown - Ваш сеанс будет завершен.

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

Работа Windows будет завершена через 100 мин

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

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

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

shutdown /a - отмена перезагрузки Выход из системы отменен

Перезагрузить Windows немедленно

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

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

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

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

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

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

Перезагрузка Windows в определенное время

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

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

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

$Trigger= New-ScheduledTaskTrigger -At 00:00am -Daily
$User= «NT AUTHORITY\SYSTEM»

Перезагрузка удаленных компьютеров командой shutdown

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

shutdown /r /t 120 /m \\192.168.1.100

shutdown /r //m - перезагрузка удаленного компьютера

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

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

Get-NetFirewallrule -name WMI-RPCSS-In-TCP,WMI-WINMGMT-In-TCP,FPS-SMB-In-TCP| Enable-NetFirewallRule

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

net use \\192.168.31.10 /u:corp\username
shutdown /s /t 60 /f /m \\192.168.31.10

Если вам необходимо удаленно перезагрузить множество компьютеров, их список можно сохранить в текстовый файл и запустить удаленную перезагрузку всех компьютеров с помощью такого 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, чтобы его вызвать, наберите:

shutdown /i - графический интерфейс команды shutdown

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

Перезагрузка и выключение Windows с помощью PowerShell

В PowerShell есть две команды для выключения и перезагрузки компьютера: Restart-Computer и Stop-Computer. Обе команды позволяют выключить или перезагрузить локальный или удаленный компьютер по сети.

powershell команда Restart-Computer

Для перезагрузки Windows выполните:

Чтобы выключить компьютер:

По умолчанию перезагрузка начнется через 5 секунд. Можно увеличить задержку перед перезагрузкой:

Restart-Computer –delay 15

У обоих командлетов есть параметр –ComputerName , который позволяет задать список удаленных компьютеров.

Например, чтобы удаленно выключить два сервера Windows:

Stop-Computer -ComputerName «Server01», «Server02»

Можно указать учетные данные администратора для подключения к удаленному хосту:

$Creds = Get-Credential
Restart-Computer -ComputerName $Names -Credential $Creds

Для подключения к удаленным компьютерам используется WMI и DCOM (он должны быть включен и настроен). Если WMI не настроен, при запуске команды появится ошибка:

Если на удаленном компьютере настроен WinRM (Windows Remote Management), вы можете использовать для подключения WSman вместо WMI:

Restart-Computer -ComputerName wks-t1122h2 -Protocol WSMan

Если на удаленном компьютер есть активные сессии пользователей, при запуске Restart-Computer появится ошибка:

Restart-Computer на удаленном компьютере есть активный пользователь

Для принудительной перезагрузки нужно добавить параметр -Force:

Restart-Computer -ComputerName wks-t1122h2 –Force

EventID 1074 кто перезагрузил windows

С помощью параметра -For можно перезагрузить компьютер и дождаться, когда он будет доступен. Например, вы хотите убедиться, что удаленный компьютер успешно перезагрузится и на нем стартовала служба WinRM, позволяющая подключиться к нему через WS-Management:

Restart-Computer -ComputerName wks-t1122h2 -Wait -For WinRM

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

Restart-Computer -ComputerName wks-t1122h2 -Wait -For TermService

Если нужно одновременно перезагрузить несколько хостов, можно использовать возможности параллельного запуска команд в версии PowerShell 7.x.

Например, вы можете получим список Windows Server в определенном контейнере (Organizational Unit) Active Directory с помощью командлета Get-ADComputer и перезагрузить их одновременно:

$Computers = (Get-ADComputer -Filter ‘operatingsystem -like «*Windows server*» -and enabled -eq «true»‘ -SearchBase «OU=Servers,DC=winitpro,DC=loc»).Name
$Computers | ForEach-Object -Parallel < Restart-Computer -ComputerName $_ -Force>-ThrottleLimit 3

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

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

Соавтор(ы): Luigi Oppido. Луиджи Оппидо — владелец и техник компании по ремонту компьютеров Pleasure Point Computers в Санта-Круз, Калифорния. Имеет более 25 лет опыта в ремонте компьютеров, обновлении, восстановлении данных и удалении вирусов. Также более двух лет ведет радиопередачу Computer Man Show! на KSCO в Центральной Калифорнии.

Количество просмотров этой статьи: 38 095.

Командная строка — это функция Windows, которая обеспечивает точку входа для ввода команд MS-DOS (Microsoft Disk Operating System) и других компьютерных команд. Командную строку можно использовать для удаленного выключения или перезагрузки другого компьютера. Кроме того, через Командную строку также можно получить доступ к окну «Диалог удаленного завершения работы». Чтобы удаленно завершить работу другого компьютера, у вас должен быть административный доступ к целевому компьютеру. На целевом компьютере также должен быть включен общий доступ к файлам и принтерам.

Как удаленно перезагрузить или выключить компьютер через удаленный рабочий стол (RDP)

Как удаленно перезагрузить или выключить компьютер через удаленный рабочий стол (RDP)

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

remote_reboot01

Способ 1: Горячие клавиши Alt + F4

Решение достаточно простое — необходимо воспользоваться горячими клавишами Alt + F4 , после чего появится меню с предложением завершения работы, где можно выбрать в том числе и перезагрузку.

remote_reboot02

Способ 2: Командная строка

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

Кроме этого, можно использовать ключ -t, с помощью которого можно задать время, через которое произойдет завершение работы. Например команда ниже перезагрузит компьютер через 2 минуты (задается время в секундах).

Способ 3: Горячие клавиши Ctrl + Alt + End

Также, работая через удаленный рабочий стол, можно вызвать меню, аналогичное нажатию Ctrl+Alt+Del на локальном компьютере — для этого нужно нажать клавиши Ctrl + Alt + End (подробней про эти клавиши можно прочитать в этой статье). После вызова данного меню, в правом нижнем углу будут доступна кнопка для выключения или перезагрузки компьютера (на картинке ниже, отмечено оранжевым цветом).

Была ли эта статья Вам полезна?

Комментарии к статье (21)

    • Аноним
    • 05.07.2022 10:18

    А как вызвать саму командную строку?) (к способу 2)
    Первый способ не работает, так как кнопка "ок" почему не активная и ее не запустить (к 1му варианту)

    • Ответить
      • Recluse
      • 05.07.2022 11:47

      Через Пуск или нажав клавиши Win + R , после чего, в появившемся окне набрать команду cmd , и нажать кнопку OK.
      Вы так же можете прочитать про запуск командной строки в нашей отдельной статье.

      • Ответить
      • Гость
      • 07.02.2022 14:23

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

      • Ответить
        • Recluse
        • 07.02.2022 16:29

        А еще, прямо в названии написано «через удаленный рабочий стол», о чем собственно и идет речь в статье.

        • Ответить
        • Гость
        • 28.11.2021 13:27

        в статье описаны способы выключения компьютера традиционными способами, а не удалённо

        • Ответить
          • AJIekceu4
          • 28.11.2021 13:29

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

          • Ответить
          • Илья
          • 02.08.2021 10:14

          СПАСИБО. Ctrl+Alt+End спас буквально таки.

          • Ответить
          • Татьяна
          • 09.07.2021 08:17

          Спасибо вам огромное , у меня завис удаленныц компьютер и большая часть команд не срабатывала.Помог ctrl+alt+end , смогла перезагрузить.Вы меея спасли))

          • Ответить
          • Евгений
          • 13.05.2021 08:21

          Я бы прям посмотрел как работает Ctrl Alt End 🙂

          • Ответить
          • Геон
          • 13.11.2020 15:12

          F4 надо делать, когда мышь на рабочем столе и нет активной программы.
          Заметка полезна, спасибо!

          • Ответить
          • Антон
          • 04.11.2020 21:23

          Автору спасибо! Ctrl+alt+end — просто волшебно.

          • Ответить
          • Аноним
          • 12.10.2020 10:39

          «shutdown -r» — оптимально! Спасибо автору!

          • Ответить
          • Аноним
          • 20.09.2020 18:15
          • Ответить
          • Сергей
          • 18.09.2020 20:10

          Класс, спасибо огромное.

          • Ответить
          • Олеся
          • 18.07.2020 09:45

          Спасибо за подсказку! Ctrl+alt+end — то, что было нужно)

          • Ответить
          • Александр
          • 22.06.2020 17:17

          Спасибо. Очень выручили. Ctrl+Alt+End помогло

          • Ответить
          • Лена
          • 22.06.2020 07:19

          Спасибо, огромное, сработало, все супер.Помогла команда Ctrl Alt End.

          • Ответить
          • Татьяна
          • 08.06.2020 09:45

          Спасибо, очень пригодилось! А то каждый раз приходилось заявку программистам делать. А сейчас сама перезагрузила комп и все заработало!

          • Ответить
          • Гость
          • 22.05.2020 15:43

          Ctrl Alt End в 7-й винде не пашет

          • Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *