Comment redémarrer à distance un ordinateur Windows 10 à l'aide de PowerShell

De temps en temps, plus particulièrement, un administrateur système devra redémarrer un serveur ou un système. Habituellement, vous pouvez éteindre ou redémarrer à distance Windows 10(Remote Shut down or Restart Windows 10) via l'interface utilisateur graphique - PowerShell fournit plusieurs méthodes pour redémarrer un ordinateur à distance et nous décrirons les 6 méthodes connues dans cet article.

Comment utiliser PowerShell pour redémarrer un ordinateur distant

Comment redémarrer à distance(Remotely Restart) Windows 10 à l'aide de PowerShell

Une condition préalable à ces méthodes est de s'assurer que nous pouvons contacter les systèmes distants et nous authentifier si nécessaire. Et aussi, vous devez vérifier qu'un système distant n'est pas en attente d'un redémarrage.

Vous aurez besoin des éléments suivants :

1] Redémarrez(Restart) un ordinateur distant avec Restart-Computer

Cette applet de commande est simple à utiliser avec des paramètres flexibles. Une condition préalable supplémentaire pour que la commande fonctionne est de s'assurer que WinRM est configuré et autorisé via le pare-feu Windows de l'ordinateur distant(allowed through the remote computer’s Windows firewall) et que WMI est autorisé via le pare-feu Windows .

Restart-Computer -ComputerName $ComputerName -Force

Pour redémarrer plusieurs ordinateurs en parallèle, exécutez la commande suivante :

$ComputerArray | ForEach-Object -Parallel {
Restart-Computer -ComputerName $_ -Force
} -ThrottleLimit 3

2] Redémarrez(Restart) un ordinateur distant avec Invoke-CimMethod

Le Invoke-CimMethodfonctionne en utilisant une méthode WIM pour redémarrer le système distant - bien que pas aussi flexible que l' Restart-Computerapplet de commande.

Une condition préalable supplémentaire pour que la commande fonctionne est de s'assurer que WinRM est configuré et autorisé via le pare-feu Windows de l'ordinateur distant .

Invoke-CimMethod -ComputerName $ComputerName -ClassName 'Win32_OperatingSystem' -MethodName 'Reboot'

3] Redémarrez(Restart) un ordinateur distant avec shutdown.exe

Il shutdown.exes'agit de l'exécutable intégré standard que Windows propose pour redémarrer un système, et ce n'est pas une commande PowerShell mais offre une série d'options robustes.

Une condition préalable supplémentaire pour que la commande fonctionne est de s'assurer que le service Registre distant(Remote Registry) est activé et que WMI est autorisé via le pare-feu Windows sur l'ordinateur distant .

shutdown.exe /m \\remotecomputer /r /t 0

4] Redémarrez(Restart) un ordinateur distant avec PSExec.exe

L'un des utilitaires les plus utilisés de la boîte à  outils Sysinternalspsexec.exe  offre plusieurs capacités uniques qui facilitent l'interaction avec un système distant.

Une condition préalable supplémentaire pour que la commande fonctionne est de s'assurer que le service SMB(SMB Service) est en cours d'exécution, que le partage de fichiers et d'imprimantes est activé(file and printer sharing is enabled) , que le partage de fichiers simple est désactivé et que le partage administratif admin$ est disponible.

psexec.exe -d -h \\remotecomputer "shutdown.exe /r /t 0 /f"

5] Redémarrez(Restart) un ordinateur distant avec RunDLL32.exe

Le  rundll32.exe offre un moyen d'exécuter certaines méthodes sur des exécutables internes et des API Windows(Windows APIs) , telles que shell32.dll. Il existe deux méthodes pour redémarrer un système à l'aide de cette fonctionnalité, mais cette méthode ne peut pas être utilisée à distance par elle-même, vous pouvez la combiner avec PowerShell via un Invoke-Command système distant.

Méthode 1(Method 1) :

Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }

Méthode 2(Method 2) :

Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }

6] Redémarrez(Restart) un ordinateur distant avec Taskkill.exe

Dernier point mais non le moindre, taskkill.exe un autre utilitaire Windows qui offre certaines fonctionnalités pour redémarrer Windows , mais de manière détournée. En mettant fin au  lsass.exe processus, vous forcerez un redémarrage de Windows .

taskkill.exe /S \\remotecomputer /IM lsass.exe /F

C'est tout sur les 6 façons d'utiliser PowerShell pour redémarrer un ordinateur distant !



About the author

Je suis un réviseur de logiciels et un expert en productivité. Je révise et rédige des critiques de logiciels pour diverses applications logicielles, telles qu'Excel, Outlook et Photoshop. Mes critiques sont bien informées et fournissent des informations objectives sur la qualité de l'application. J'écris des critiques de logiciels depuis 2007.



Related posts