PI Services

Le blog des collaborateurs de PI Services

Powershell & Windows Server Backup

 

Windows Server Backup, le successeur de NT Backup est intéressant mais un peu déroutant, et en tout cas plus facile a administrer avec Powershell donc voici un script Powershell qui:

1/ Vérifie la présence de la feature Windows Server Backup et l’installe si ce n’est pas le cas

2/ Si le feature est présent il crée une Policy (au sens Windows server backup) qui effectuera un backup SystemState tout les jours a 1:00 AM.

Avant d’exécuter ce script il est nécessaire de permettre l’exécution de script avec la commande suivante dans une console powershell:

Set-executionpolicy –executionpolicy unrestricted

 

Import-Module servermanager

$module=Get-Module servermanager

$backfeat=Get-WindowsFeature backup-features

$backtools=Get-WindowsFeature backup-tools

if ($backfeat.Installed -eq $TRUE -AND $backtools.installed -eq $TRUE)

{

write-host "les features WINDOWS SERVER BACKUP sont déja installé - Le script va continuer"

}

else

{

add-WindowsFeature backup-features,backup-tools

write-host "Merci de redemarrer le serveur pour prendre en compte l'ajout du feature Windows Server Backup"

exit

}

####verification de la presence du snapin Windows.serverbackup####

Add-Pssnapin Windows.serverbackup -ErrorAction:SilentlyContinue

if ($errSnapin.count -eq 0)

{

Write-host "`No Windows.serverbackup PSSnapin initialized!";

Write-host "Windows.serverbackup PSSnapin failed initialize! Verifiez que le role Windows Server Backup est bien installé dans la console Server Manager";

}

elseif (Get-PSSnapin | where-object {$_.Name -eq "Windows.serverbackup"})

{

write-host "le snapin Windows.serverbackup est deja chargé - le script va continuer"

}

{

}

$SystemStatepolicy = New-WBPolicy

set-wbschedule -Policy $SystemStatepolicy -Schedule 1:00

Add-WBSystemState -Policy $SystemStatepolicy

$diskBackupLocation = New-WBBackupTarget -VolumePath D:

Add-WBBackupTarget -Policy $SystemStatepolicy -Target $diskBackupLocation

Set-WBPolicy -Policy $SystemStatepolicy -force

write-host "Une sauvegarde System State aura lieu tout les jours a 1:00 AM"