Как удаленно перезагрузить компьютер с Windows с помощью PowerShell
Время от времени, особенно системному администратору, необходимо перезапускать сервер или систему. Обычно вы можете удаленно подключиться к системе и перезапустить / выключить систему через графический интерфейс пользователя – PowerShell предоставляет несколько методов удаленной перезагрузки компьютера, и в этом посте мы опишем 6 известных методов.
Перезагрузите компьютер с Windows удаленно с помощью PowerShell
Предварительным условием использования этих методов является обеспечение возможности связи с удаленными системами и аутентификации при необходимости. Кроме того, вам необходимо убедиться, что удаленная система не ожидает перезагрузки.
Вам понадобится следующее:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
1]Перезагрузите удаленный компьютер с помощью Restart-Computer
Этот командлет прост в использовании с гибкими параметрами. Дополнительным условием для работы команды является то, что WinRM настроен и разрешен через брандмауэр Windows удаленного компьютера, а WMI разрешен через брандмауэр Windows.
Restart-Computer -ComputerName $ComputerName -Force
Чтобы перезагрузить несколько компьютеров параллельно, выполните следующую команду:
$ComputerArray | ForEach-Object -Parallel { Restart-Computer -ComputerName $_ -Force } -ThrottleLimit 3
2]Перезагрузите удаленный компьютер с помощью Invoke-CimMethod
В Invoke-CimMethod
работает с использованием метода WIM для перезагрузки удаленной системы, хотя и не так гибко, как Restart-Computer
командлет.
Дополнительным предварительным условием для работы команды является то, что WinRM настроен и разрешен через брандмауэр Windows удаленного компьютера.
Invoke-CimMethod -ComputerName $ComputerName -ClassName 'Win32_OperatingSystem' -MethodName 'Reboot'
3]Перезагрузите удаленный компьютер с помощью shutdown.exe.
В shutdown.exe
– это стандартный встроенный исполняемый файл, который Windows предлагает для перезапуска системы, и это не команда PowerShell, но предлагает ряд надежных опций.
Дополнительным предварительным условием для работы команды является то, что на удаленном компьютере включена служба удаленного реестра и разрешен WMI через брандмауэр Windows.
shutdown.exe /m \remotecomputer /r /t 0
4]Перезагрузите удаленный компьютер с помощью PSExec.exe.
Одна из наиболее часто используемых утилит в наборе инструментов Sysinternals, psexec.exe
предлагает несколько уникальных возможностей, которые упрощают взаимодействие с удаленной системой.
Дополнительным предварительным условием для работы команды является обеспечение работы службы SMB, включения общего доступа к файлам и принтерам, отключения простого общего доступа к файлам и доступности административного общего ресурса admin $.
psexec.exe -d -h \remotecomputer "shutdown.exe /r /t 0 /f"
5]Перезагрузите удаленный компьютер с помощью RunDLL32.exe.
В rundll32.exe
предлагает способ запуска определенных методов для внутренних исполняемых файлов и API-интерфейсов Windows, таких как shell32.dll. Есть два метода, с помощью которых вы можете перезапустить систему, используя эту функцию, но на самом деле этот метод нельзя использовать удаленно сам по себе. Invoke-Command
в удаленной системе.
Способ 1:
Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }
Способ 2:
Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }
6]Перезагрузите удаленный компьютер с помощью Taskkill.exe.
Последний по порядку, но не по значимости, taskkill.exe
– еще одна утилита Windows, которая предлагает некоторые функции для перезапуска Windows, хотя и окольным путем. Завершив lsass.exe
процесса, вы принудительно перезагрузите Windows.
taskkill.exe /S \remotecomputer /IM lsass.exe /F
Вот и все, о 6 способах использования PowerShell для перезагрузки удаленного компьютера!
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)