Mettre à jour Windows avec PowerShell : guide complet avec PSWindowsUpdate

🔧 Introduction : Pourquoi mettre à jour Windows avec PowerShell ?

Mettre à jour Windows est essentiel pour garantir la sécurité, la stabilité et les performances de votre système. Si vous êtes administrateur système ou simplement un utilisateur avancé, PowerShell vous offre une méthode puissante et flexible pour automatiser ce processus grâce au module PSWindowsUpdate.

Dans cet article, nous allons explorer comment utiliser PowerShell pour rechercher, filtrer et installer des mises à jour Windows, avec ou sans redémarrage, en incluant ou excluant certains types de mises à jour comme les pilotes ou les firmwares.


🧩 Étape 1 : Installer et charger le module PSWindowsUpdate

Avant toute chose, il faut installer le module PowerShell PSWindowsUpdate, qui n’est pas fourni par défaut avec Windows.

powershell
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Set-ExecutionPolicy RemoteSigned -Scope Process -Force
Install-PackageProvider -Name NuGet -Force -ErrorAction 'SilentlyContinue' > $null
Set-PSRepository -Name PSGallery -InstallationPolicy TrustedIf (Get-InstalledModule -Name PSWindowsUpdate -ErrorAction 'SilentlyContinue') {
Update-Module -Name PSWindowsUpdate -Force
} Else {
Install-Module -Name PSWindowsUpdate -Force
}
Import-Module PSWindowsUpdate

Astuce : Cette commande active également la communication sécurisée (TLS 1.2), essentielle pour interagir avec le dépôt officiel de modules.


📋 Étape 2 : Vérifier les mises à jour disponibles

Une fois le module chargé, vous pouvez afficher la liste des mises à jour disponibles :

powershell
Get-WindowsUpdate

💡 Cette commande vous permet d’analyser les mises à jour avant de les installer, pratique pour un contrôle précis.


🔄 Étape 3 : Installer toutes les mises à jour disponibles

Pour installer toutes les mises à jour proposées par Microsoft, y compris les pilotes et firmwares, et redémarrer automatiquement si nécessaire :

powershell
Install-WindowsUpdate -AcceptAll -AutoReboot

⚠️ Attention : Certaines mises à jour de firmware peuvent entraîner des risques de compatibilité. Soyez prudent, surtout sur des machines critiques.


🚫 Exclure certains types de mises à jour (pilotes, previews…)

Si vous ne souhaitez installer que les correctifs système, sans pilotes, packs ou versions préliminaires :

powershell
Install-WindowsUpdate -NotCategory "Drivers","Service Packs","FeaturePacks" -NotTitle "preview" -AcceptAll

👉 Pour éviter que l’ordinateur ne redémarre automatiquement :

powershell
Install-WindowsUpdate -NotCategory "Drivers","Service Packs","FeaturePacks" -NotTitle "preview" -AcceptAll -IgnoreReboot

🧩 Gérer les mises à jour spécifiques

Vous souhaitez exclure une mise à jour précise (par exemple KB1234567) :

powershell
Install-WindowsUpdate -NotKBArticleID KB1234567 -AcceptAll

Ou plusieurs mises à jour :

powershell
Install-WindowsUpdate -AcceptAll -NotKBArticleID "KB1234567,KB7654321"

🛠️ Réinitialiser les composants de Windows Update

Si vous rencontrez des problèmes pour rechercher ou appliquer les mises à jour, vous pouvez réinitialiser les composants Windows Update :

powershell
Reset-WUComponents

📚 Ressources utiles avec PSWindowsUpdate

Voici quelques commandes supplémentaires pour explorer le module :

  • 🔍 Lister toutes les fonctions disponibles :
    powershell
    Get-Command -Module PSWindowsUpdate
  • 📖 Afficher l’aide complète d’une commande :
    powershell
    Get-Help Install-WindowsUpdate -Full

✅ Conclusion : Un outil puissant pour les mises à jour avancées

PowerShell avec PSWindowsUpdate permet d’automatiser et personnaliser la gestion des mises à jour Windows avec une grande précision. C’est un outil idéal pour les administrateurs et les utilisateurs avancés souhaitant aller au-delà des options graphiques classiques.

🔄 N’hésitez pas à intégrer ces commandes dans vos scripts pour automatiser les mises à jour sur plusieurs machines.

cedetrick

👤 Présentation personnelle Né en 1970, je suis un passionné d'informatique depuis mon tout premier ZX81. Curieux de nature, j'ai toujours aimé explorer, démonter, comprendre - et parfois même réparer - tout ce qui touche au numérique. Officiellement vintage, j'ai traversé les époques technologiques : du TI99/4A, CPC6128, aux calculatrices HP 48G / GX / 40G et TI92, sans oublier l'arrivée des PCs, que j'ai suivie de près, du i386 jusqu'aux configurations modernes. 💻 Je reste un utilisateur convaincu de Windows, même si je m'essaie régulièrement à Linux pour sortir de ma zone de confort. Le monde Mac ? Disons qu'on ne s'est jamais vraiment croisés. 🎮 Côté consoles, c'est toute une vie de gaming (ou presque) : de l'Atari (avant même qu'il s'appelle 2600) à la SNES, puis les PS1 et PS2 de mon petit frère - que je formais au passage à Doom, Wolfenstein, et aux assemblages Lego sur PC. Aujourd'hui, même si j'ai une PS3, PS4 et Switch, le temps me manque pour vraiment en profiter... mais elles sont là, fidèles, comme un musée interactif prêt à s'allumer ! 🎥📚 Passionné de cinéma, de séries, et de lecture, j'aime aussi simplement découvrir, apprendre et m'émerveiller. Car au fond, ce qui m'anime depuis toujours, c'est cette curiosité insatiable, ce plaisir de creuser un sujet jusqu'à en comprendre les rouages.