Блог

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

Приобрести оригинальные ключи активации Windows Server RDS можно у нас в каталоге от 3440 ₽

В серверных редакциях Windows ситуация иная: локальный администратор имеет полный контроль над системой, включая управление питанием, в том числе при подключении по RDP.

Но для клиентских ОС подобные возможности не предусмотрены по умолчанию.

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

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

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

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

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

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

Когда графические инструменты бессильны, на помощь приходит командная строка. Запомните всего одну простую команду. Откройте окно «Выполнить» (Win+R) или «Пуск — Выполнить» и введите нужные инструкции:

Для выключения ПК:

shutdown -s -f -t 0

Для перезагрузки ПК:

shutdown -r -f -t 0

Расшифровка ключей:

s — выключение системы

r — перезагрузка

f — принудительное завершение приложений, препятствующих завершению работы

t — задержка перед выполнением команды в секундах (0 означает немедленное выполнение)

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

Утилита PsShutdown от Sysinternals

Если по каким-то причинам встроенная команда не удовлетворяет вашим потребностям, можно обратиться к сторонним инструментам. Утилита PsShutdown от Sysinternals — удобная альтернатива. После скачивания поместите ее в каталог, включенный в переменную PATH, или добавьте ее местоположение в PATH самостоятельно. Тогда вы сможете использовать утилиту без указания полного пути.

Синтаксис схож со стандартным, но имеет отличия:

Для выключения:

psshutdown -k -f -t 0

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

psshutdown -r -f -t 0

Ключи:

k — выключение питания

r — перезагрузка

f — принудительное завершение процессов

t — задержка перед выполнением

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

Кроме того, PsShutdown может управлять питанием удаленных ПК через сеть. Стандартная утилита shutdown тоже умеет это делать с ключом

-m \\computer

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

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

psshutdown \\computer -u username -p password -r -f -t 0

Где username и password — учетные данные, имеющие права на доступ к административному ресурсу ADMIN$. В среде Active Directory доменный администратор обладает такими правами. В рабочей группе могут понадобиться дополнительные настройки.

Если при попытке выключить удаленную систему под локальным администратором вы получаете «Отказано в доступе».

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

А затем в реестре по пути:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System

добавьте параметр типа DWORD с именем LocalAccountTokenFilterPolicy
и установите его значение в 1. После перезагрузки компьютера команда должна сработать.

PowerShell

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

Для выключения:

Stop-Computer -Force

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

Restart-Computer -Force

Ключ -Force аналогичен -f у shutdown и позволяет принудительно завершать зависшие приложения.

PowerShell можно применять и для удаленного управления, например:

Stop-Computer -ComputerName computer -Credential username -Force

Где ComputerName — имя удаленной машины (можно указывать несколько через запятую), а Credential — учетная запись для аутентификации. PowerShell безопаснее, так как пароль не хранится открытым текстом и не попадает в историю.

Как видите, в Windows существует множество способов управлять питанием удаленного компьютера в рамках сеанса RDP. Выбор инструмента остается за вами: можно использовать стандартную команду, сторонние утилиты или же возможности PowerShell — все зависит от личных предпочтений и конкретных условий работы.

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии