15/11/2024

WSUS

Nettoyage WSUS : comment libérer de l’espace disque ?

I. Présentation

Dans ce nouveau tutoriel, je vous propose de voir comment réaliser un nettoyage WSUS dans le but de libérer de l'espace disque sur un serveur WSUS ? Je suis à peu près sur que c'est un problème rencontré au moins une fois par les administrateurs de systèmes Windows.

Pour libérer de l'espace disque, on va s'intéresser à la quantité de mises à jour téléchargées : sont-elles réellement toutes utiles ? WSUS intègre des options de nettoyage native et nous verrons également comment aller plus loin grâce à un script de nettoyage.

De manière générale, WSUS demande de l'espace de stockage et on ne peut pas faire de miracles non plus... La capacité de stockage dont il a besoin dépends des produits que vous sélectionnez et des types de mises à jour. La première étape consiste à vérifier que vous avez bien sélectionné les produits dont vous avez besoin : cette liste doit être maintenue dans le temps. Peut-être qu'il y a deux ans vous aviez 3 serveurs en WS 2012 R2, mais aujourd'hui il n'existe plus, alors vous pouvez vous passer des mises à jour pour cet OS.

Cette vérification s'effectue à l'emplacement suivant : Options > Produits et classifications.

II. Nettoyage WSUS avec l'Assistant intégré

Commençons par découvrir les différentes options de nettoyage proposées par la console WSUS. Par défaut, un serveur WSUS va télécharger seulement les mises à jour approuvées, vous pouvez vérifier que c'est bien le cas sur votre serveur. Autrement dit, quelqu'un a-t-il modifié ce paramètre...?

Au sein de la console WSUS, cliquez sur "Options" sur la gauche puis sur "Fichiers et langues des mises à jour".

Une fenêtre va s'ouvrir, l'option "Stocker les fichiers des mises à jour localement sur ce serveur" doit être cochée, ainsi que la sous-option "Télécharger les fichiers de mise à jour sur ce serveur uniquement lorsque les mises à jour sont approuvées". Si ce n'est pas le cas, je vous recommande de cocher cette option.

Ensuite, il y a l'Assistant de nettoyage intégré à WSUS. Toujours au sein de la partie "Options", on peut y accéder en cliquant sur "Assistant de nettoyage du serveur". Différentes options sont proposées pour effectuer ce nettoyage et espérer libérer de l'espace disque. Deux options peuvent potentiellement libérer de l'espace disque : "Fichiers de mise à jour inutiles" et "Mises à jour et révisions de mises à jour inutilisées".

⭐ Lorsque vous exécutez une action de nettoyage, votre serveur WSUS plante et affiche le message "Réinitialiser le nœud du serveur" ? Vous devez augmenter la mémoire allouée au site dans IIIS - Voir cet article : WSUS - Réinitialiser le nœud du serveur

Par expérience, on constate bien souvent que le nettoyage intégré à WSUS n'est pas suffisamment efficace. Fort heureusement, il existe des scripts PowerShell complémentaires et qui sont d'une grande aide !

III. Scripts PowerShell pour le nettoyage WSUS

Nous allons utiliser un script PowerShell disponible sur mon GitHub (et initialement présent sur la Gallery Technet de Microsoft) et disponible à cette adresse : Cleanup WSUS - 1

Pour l'exécuter, il suffit de l'appeler :

.\wsus-cleanup-updates-v4.ps1

Nettoyage WSUS

Ce script va réaliser un nettoyage WSUS afin de supprimer les mises à jour expirées, remplacées, obsolètes, et les ordinateurs inactifs. Pour éviter de surcharger le serveur, les mises à jour sont supprimées une par une.

En complément, Nick Eales de chez Microsoft a publié un script PowerShell que je vais utiliser également dans cet article. Vous pouvez récupérer le script également sur mon Github où j'héberge une copie du script officiel : Cleanup WSUS - 2

Après téléchargement, on peut lancer un nettoyage WSUS avec ce script en exécutant cette commande :

.\Decline-Updates.ps1 -WSUSServer MonWSUS -WSUSPort 8530

Que va-t-il faire comme nettoyage WSUS sur notre serveur de mises à jour ? Il va supprimer les mises à jour obsolètes, notamment qui ont plus de trois mois, et il va également supprimer :

  • Toutes les mises à jour marquées comme "Expirées" par Microsoft
  • Toutes les mises à jour remplacées
  • Les mises à jour pour Internet Explorer 7, 8 et 9
  • Les mises à jour en Japonais, Coréen ou Taïwanais
  • Les packs de langue
  • Les mises à jour Windows XP
  • Les mises à jour en version Beta
  • Les mises à jour pour les systèmes 32 bits et Itanium

Note : si vous obtenez une erreur lors de l'exécution d'un script de nettoyage WSUS, pensez à augmenter la mémoire sur votre site IIS (voir lien précédent).

Enfin, dans certains cas, il peut être intéressant de repartir avec une base de données vierge complètement sans réinstaller votre serveur. Pour rappel, j'avais écrit un tutoriel à ce sujet : WSUS - Recréer la base et les données

J'espère que ces différentes astuces vous permettront de réaliser un nettoyage WSUS efficace sur votre serveur.

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

13 commentaires sur “Nettoyage WSUS : comment libérer de l’espace disque ?

  • Bonjour,
    Merci pour cette article car sur mon serveur WSUS, le nettoyage par interface graphique plantée.
    J’ai pu faire mon nettoyage par le script powershell
    Encore merci

    Répondre
  • Bonjour,

    Où trouver les scripts de nettoyage ?
    Les liens technet ne semblent plus fonctionner…

    Répondre
  • Bonjour,

    Articles sympa mais malheureusement pas maintenu à jour : impossible de récupérer les scripts power-shell qui nous semblent très intéressants !

    Pierre

    Répondre
    • Hello Pierre,
      Il faut que je prenne le temps de retrouver les scripts pour mettre à jour les liens, car effectivement ils ont disparu peu de temps après la mise en ligne de l’article.
      Bonne journée
      Florian

      Répondre
  • Bonjour,

    merci pour cet article
    cependant je cherche aussi une commande powershell pour désactiver le replica sur mon wsus
    auriez-vous ca ?
    par avance merci

    Répondre
  • Bonjour

    les liens ne fonctionnent plus pourriez vous svp me fournir les scripts ?

    Cordialement
    Francois

    Répondre
  • Bonjour
    J’ai augmenter la valeur dans IIS mais je n’ai pas arrivé à nettoyer WSUS!!!!
    pouvez vous m’aider?
    cordialement
    Mozhdeh

    Répondre
  • Bonjour,

    les scripts ne semblent pas fonctionnels :

    PS C:\scripts> .\wsus-cleanup-updates-v4.ps1
    At C:\scripts\wsus-cleanup-updates-v4.ps1:200 char:17
    + Sign up
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
    quotation marks (« & ») to pass it as part of a string.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:205 char:209
    + … herit p-1″>
    + ~
    The ‘
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
    quotation marks (« & ») to pass it as part of a string.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2726 char:148
    + … ; » aria-label= »Jump to line » autofocus>
    + ~~~~
    Unexpected token ‘Jump’ in expression or statement.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2768 char:153
    + … {"category":"Footer","action":"go to terms&qu …
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
    quotation marks (« & ») to pass it as part of a string.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2768 char:160
    + … category":"Footer","action":"go to terms",&qu …
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
    quotation marks (« & ») to pass it as part of a string.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2768 char:172
    + … t;:"Footer","action":"go to terms","label&quo …
    + ~
    The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
    quotation marks (« & ») to pass it as part of a string.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2768 char:179
    + … t;Footer","action":"go to terms","label":&quo …
    + ~
    Missing expression after unary operator ‘,’.
    At C:\scripts\wsus-cleanup-updates-v4.ps1:2768 char:179
    + … t;Footer","action":"go to terms","label":&quo …
    + ~
    Unexpected token ‘&’ in expression or statement.
    Not all parse errors were reported. Correct the reported errors and try again.
    + CategoryInfo : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : AmpersandNotAllowed

    Répondre
  • Salut, je fais un truc qu’il ne faut pas ou le script ne fonctionne plus ? Merci

    PS C:\WSUS> .\Decline-Updates.ps1 -WSUServer WSUS2021 -WSUSPort 8530
    Exception lors de l’appel de «SourceExists» avec «1» argument(s): «La source est introuvable mais certains ou
    l’ensemble des journaux des événements n’ont pas pu faire l’objet d’une recherche. Journaux inaccessibles : Security,
    State.»
    Au caractère C:\WSUS\Decline-Updates.ps1:36 : 10
    + if ( -not [System.Diagnostics.EventLog]::SourceExists($log_source …
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : SecurityException

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.