Občas bude muset správce systému restartovat server nebo systém. Obvykle se můžete vzdáleně připojit k systému a restartovat / vypnout systém prostřednictvím grafického uživatelského rozhraní - PowerShell poskytuje několik metod vzdáleného restartování počítače a v tomto příspěvku uvedeme 6 známých metod.
Restartujte počítač se systémem Windows vzdáleně pomocí prostředí PowerShell
Předpokladem těchto metod je zajistit, abychom mohli kontaktovat vzdálené systémy a ověřovat se podle potřeby. A také musíte ověřit, že vzdálený systém čeká na restart.
Budete potřebovat následující:
- Uživatelský účet na vzdáleném počítači ve skupině místního správce.
- Windows PowerShell nebo PowerShell Core.
1] Restartujte vzdálený počítač pomocí Restart-Computer
Tato rutina se snadno používá s flexibilními parametry. Dalším předpokladem pro fungování příkazu je zajistit, aby byl WinRM nakonfigurován a povolen prostřednictvím brány firewall systému Windows vzdáleného počítače a aby bylo povoleno WMI prostřednictvím brány firewall systému Windows.
Restartovat počítač - název počítače $ název počítače - síla
Chcete-li restartovat více počítačů současně, spusťte následující příkaz:
$ ComputerArray | ForEach-Object -Parallel Restart-Computer -ComputerName $ _ -Force -ThrottleLimit 3
2] Restartujte vzdálený počítač pomocí Invoke-CimMethod
The Invoke-CimMethod
funguje pomocí metody WIM k restartování vzdáleného systému - i když ne tak flexibilní jako Restartujte počítač
rutina.
Dalším předpokladem pro fungování příkazu je zajistit, aby byl WinRM nakonfigurován a povolen prostřednictvím brány firewall systému Windows vzdáleného počítače.
Invoke-CimMethod -ComputerName $ ComputerName -ClassName 'Win32_OperatingSystem' -MethodName 'Reboot'
3] Restartujte vzdálený počítač s vypnutím.exe
The vypnout.exe
je standardní integrovaný spustitelný soubor, který Windows nabízí k restartování systému, a nejde o příkaz PowerShell, ale nabízí robustní řadu možností.
Dalším předpokladem pro fungování příkazu je zajistit, aby měl vzdálený počítač povolenou službu Vzdálený registr a WMI povolenou prostřednictvím brány firewall systému Windows.
vypnout.exe / m \\ remotecomputer / r / t 0
4] Restartujte vzdálený počítač pomocí PSExec.exe
Jeden z nejpoužívanějších nástrojů v sadě nástrojů Sysinternals, psexec.exe
nabízí několik jedinečných schopností, díky nimž je interakce se vzdáleným systémem snadná.
Dalším předpokladem pro fungování příkazu je, ujistěte se, že je spuštěna služba SMB, je povoleno sdílení souborů a tiskáren, je zakázáno jednoduché sdílení souborů a je k dispozici administrativní $ administrativní sdílení.
psexec.exe -d -h \\ remotecomputer "vypnutí.exe / r / t 0 / f "
5] Restartujte vzdálený počítač pomocí RunDLL32.exe
The rundll32.exe
nabízí způsob, jak spustit určité metody proti interním spustitelným souborům a rozhraním API systému Windows, například shell32.dll. Existují dvě metody, pomocí kterých můžete restartovat systém pomocí této funkce, ale tuto metodu nelze skutečně použít na dálku sama, můžete ji kombinovat s PowerShell prostřednictvím Vyvolání velení
na vzdáleném systému.
Metoda 1:
Invoke-Command -ComputerName $ ComputerName -ScriptBlock & rundll32.bývalý uživatel.exe ExitWindowsExec
Metoda 2:
Invoke-Command -ComputerName $ ComputerName -ScriptBlock & rundll32.bývalý uživatel.exe ExitWindowsExec
6] Restartujte vzdálený počítač pomocí nástroje Taskkill.exe
V neposlední řadě, úkol.exe
je další nástroj systému Windows, který nabízí některé funkce pro restartování systému Windows, i když v kruhovém objezdu. Ukončením lsass.exe
procesu, vynutíte restartování systému Windows.
úkol.exe / S \\ remotecomputer / IM lsass.exe / F
To je vše na 6 způsobech, jak použít PowerShell k restartování vzdáleného počítače!