Sauvegarde automatique des Serveurs Windows



♦ WBADMIN.EXE (commandes - scripts avec fichier.BAT et fichier.CMD)

(Avec les derniers systèmes, Windows Server Backup remplace NTbackup)

Cette rubrique donne deux exemples de scripts pour l'automatisation des sauvegardes de serveurs windows 2008 vers un NAS ou un partage réseau de votre domaine.

1) Un premier script (savewbadmin4rep.bat) permettant de créer N répertoires et de faire une rotation des sauvegardes dans ces N conteneurs. Vous pouvez ainsi décider de ne garder qu'un certain nombre de sauvegardes à archiver (N) et d'écraser par cette rotation la plus ancienne à chaque execution du script dans le planificateur de tâches.


Scripts BAT WBADMIN

Voici un aperçu du résultat avec rotation sur 4 répertoires pour archiver plusieurs sauvegardes WindowsImageBackup. Scripts WBADMIN WindowsImageBackup

Récupérer le script ci-dessous pour créer un Fichier.BAT à copier dans un répertoire c:\scriptsBAT. Ce fichier est commenté avec les REM. Il vous faudra aussi créer un fichier compteur.txt avec la valeur 1 pour commencer et rangez le au même endroit. Modifiez le nom des partages, répertoires et de serveur suivant votre installation!!

Code du script Bat


@echo off
REM Script de sauvegarde : savewbadmin4rep.bat
REM Script utilisant WBADMIN.EXE sur un Windows Server 2008 R2
REM ********************************Boucle du compteur*************************
REM lecture du fichier c:\scriptBAT\compteur.txt

set /p REPERTOIRE= < compteur.txt

REM echo %REPERTOIRE%

REM boucle du compteur de 1 jusqu'à 4
IF %REPERTOIRE%== 4 goto init

REM echo %REPERTOIRE%
set /a REPERTOIRE=REPERTOIRE+1

REM echo %REPERTOIRE%
echo %REPERTOIRE% > compteur.txt
goto boucle

:init
set /a REPERTOIRE=REPERTOIRE-3
echo %REPERTOIRE% > compteur.txt
REM echo %REPERTOIRE%
goto fin

:boucle
echo %REPERTOIRE% > compteur.txt
REM echo %REPERTOIRE%

:fin
 
REM *********************************Sauvegarde WBADMIN*************************************
 
REM Fichiers et répertoires à inclures dans la sauvegarde
set inclure=c:\RepertoireDeFichiers

REM Sauvegarde sur un répertoire de partage du réseau
set PartageReseau=\\NomDeVotreServeurDeStockage\PartagedeVotreReseau$

REM Création d'un répertoire - Exemple \\PartageDeVotreReseau\NomDeVotreServeurSauvegardé\SystemeDonnees\Repertoire_N
set RepertoireN=%PartageReseau%\%computername%\SystemeDonnees\%REPERTOIRE%
REM set RepertoireN=G:\Backups\%computername%\SystemeDonnees\%REPERTOIRE%

REM Création du répertoire : %RepertoireN%
mkdir %RepertoireN%

REM Sauvegarde disque C et E + systemstate + exclusion 
wbadmin start backup -backuptarget:%PartageReseau%\%computername%\SystemeDonnees\%REPERTOIRE% -include:C:,E: -exclude:C:\temp -systemstate -vssFull -quiet

REM Sauvegarde d'un repertoire sur le disque C
REM Sauvegarde %inclure% vers %PartageReseau%\%computername%\SystemeDonnees\%REPERTOIRE%
REM wbadmin start backup -backuptarget:%PartageReseau%\%computername%\SystemeDonnees\%REPERTOIRE%  -include:%inclure% -quiet


REM Effacement des variables
set PartageReseau=
set inclure=
set RepertoireN=

REM pause





2) Un deuxième script (savewbadminHmins.cmd) avec création multiple de répertoires nommés par l'année, le mois, la date et l'heure dans lesquels seront écrites les sauvegardes.


Scripts CMD WBADMIN

Voici un aperçu du résultat avec création de répertoires suivant l'année, le mois, la date et
l'heure de la sauvegarde WindowsImageBackup.
Scripts WBADMIN WindowsImageBackup

Récupérer le script ci-dessous pour créer un Fichier.CMD à copier dans un répertoire c:\scriptsCMD. Ce fichier est commenté avec les REM. Il vous faudra aussi créer un fichier compteur.txt avec la valeur 1 pour commencer et rangez le au même endroit. Modifiez le nom des partages, répertoires et de serveur suivant votre installation!!

Code du Batch CMD

@echo off
REM Script de sauvegarde : savewbadminHmins.cmd REM Script utilisant WBADMIN.EXE sur un Windows Server 2008 R2 REM Fichiers et répertoires à inclure dans la sauvegarde set inclure=c:\RepertoireDeFichiers REM Sauvegarde sur un partage réseau set PartageReseau=\\NomDeVotreServeurDeStockage\PartagedeVotreReseau$ REM Nommage des répertoires avec l'année, le mois, date et heure %date:~3,2%-%date:~0,2%-%date:~6,8% set jour=%date:~0,2% set mois=%date:~3,2% set annee=%date:~6,8% set heure=%time:~0,2% set minutes=%time:~3,2% set secondes=%time:~6,2% REM Création des répertoires - Exemple \\PartageReseau\Nom_Serveur_Sauvegardé\Système et données\Année\Mois\Date\Heure set Repertoire=%PartageReseau%\%computername%\SystemeDonnees\%date:~6,8%\%date:~3,2%\%date:~0,2%-%date:~3,2%-%date:~6,8%\%time:~0,2%H%time:~3,2%min%time:~6,2%s REM Creation du répertoire %Repertoire% mkdir %Repertoire% REM Sauvegarde disques C et E + systemstate + exclusion wbadmin start backup -backuptarget:%Repertoire% -include:C:,E: -exclude:C:\temp -systemstate -vssFull -quiet REM Lancement de la sauvegarde de %inclure% vers %Repertoire% REM wbadmin start backup -backuptarget:%Repertoire% -include:%inclure% -quiet REM Effacement des variables set PartageReseau= set inclure= set jour= set mois= set annee= set heure= set minutes= set secondes= set Repertoire= REM pause

Entrez votre adresse mail:

Vous pouvez télécharger le code et les fichiers de cette démonstration contenus dans le zip suivant : ScriptsSauvegardeServeur.zip


(Dans le Gestionnaire de Serveur d'un serveur Windows 2008, il y a la possibilité d'automatiser les sauvegardes mais la sauvegarde suivante écrase la précedente et la sauvegarde n'est que journalière. L'utilité des scripts proposés sur ce site est de pouvoir créer les répertoires où seront stockées les différentes sauvegardes, de garder et d'archiver ces différentes sauvegardes. On utilisera le planificateur de tâche pour programmer les sauvegardes à des dates et heures voulues)

NB : Je vous laisse, créer les droits d'accès et partages sur vos serveurs et le réseau. Créez aussi un compte de même nom et même mot de passe sur le nas et votre serveur à sauvegarder. Intégrez ce compte utilisateur dans le groupe opérateurs de sauvegarde.

Regardons aussi le paramétrage du planificateur de tâches pour organiser les sauvegardes à partir d'un calendrier.

En partant des mêmes besoins mais en utilisant le VBscripts, j'ai ajouter une analyse des fichiers de rapports générés (C:\windows\Logs\WindowsServerBackup\Backup_Error-date-.log) de windows et ajouté un script d'envoie de mail par SMTP.


Lire la suite »





Documentation pour les commandes avec WBADMIN :
WBADMIN start backup
WBADMIN stop job
WBADMIN start recovery
WBADMIN start systemstatebackup
WBADMIN start sysrecovery






0199764