[PowerShell Script] Sauvegarder vos GPO

Si vous êtes amenés à modifier régulièrement vos stratégies de groupe, il peut être intéressant de conserver des sauvegardes à intervalles réguliers. Il est possible d'automatiser la sauvegarde en utilisant PowerShell.

La commande suivante permet par exemple de sauvegarde l'ensemble des GPO du domaine sur un partage réseau :

Backup-Gpo -All -Path \\2016DC1\Backup\Gpo

Dans ce cas à chaque exécution de la commande, une nouvelle sauvegarde des stratégies vient s'ajouter aux sauvegardes existantes dans le dossier spécifié. Si vous souhaitez exécuter la commande à intervalles réguliers il est préférable de ne conserver qu'un nombre de jours limité.

Dans le script suivant un dossier pour chaque jour est créé et la valeur « $jour » indique le nombre de jours conservé. La valeur « $BackupShare » indique le nom du partage.

import-module GroupPolicy

 

$BackupShare = "\\2016DC1\Backup\Gpo" # partage pour la sauvegarde

$date = get-date -format yyyy.M.d #Date du jour

$Jour = 15 # Nombre de jour a conserver

$Backup = $BackupShare+"\"+$date #Dossier journalier de sauvegarde

 

#Création du dossier du jour

New-Item -Name $date -ItemType Directory -Path $BackupShare

 

#Suppression des anciennes GPO de plus de $jour

Get-ChildItem $BackupShare -Directory | ?{$_.CreationTime -lt (get-date).AddDays(-$Jour)} | %{Remove-Item $_.FullName -Force -Recurse}

 

#Sauvegarde des stratégies

Backup-Gpo -All -Path $Backup

 

 

 

Theme: 

Systeme: 

Annee: