Romandie.com
 
Créer un blog | Noter ce blog | Signaler un abus
 
| Autre blog ? >>  

Support informatique chez Swiss IT Tech

Gérer un système de backup automatique sur 2 disques durs externes

Ce système ne peut s'appliquer qu'aux conditions suivantes:

  1. un responsable des backups s'assure des changements de disque.
  2. seuls des fichiers et dossiers sont sauvegardés.

Nous utiliserons l'exemple suivant:

  • un serveur de fichier Windows doit être sauvegardé de manière journalière.
  • les documents à sauvegarder se trouvent dans 3 dossiers: d:\commun, d:\utilisateurs et d:\administratif.
  • un disque dur externe est branché en tant que lecteur f:.
  • ce disque est changé tous les vendredis à midi (une alerte s'affiche dans l'agenda du respondable des backups).
  • l'objectif est d'avoir une sauvegarde des données en cas de crash mais également pourvoir récupérer un fichier disparu ou une ancienne version d'un fichier.

Bien que plusieurs logiciels de backup open source existent, aucun n'a été satisfaisant: soit il s'agissait d'usine à gaz (par rapport au cahier des charges), soit l'exécution automatique ne fonctionnait pas.

Le logiciel de sauvegarde de Microsoft, msbackup n'a jamais réussi à sauvegarder l'intégralité des fichiers.

Un premier test a été réalisé avec le logiciel 7-zip afin de générer un fichier zip lors du backup. Lors de la mise à jour du zip (sauvegarde incrémentale), le dossier temp de Windows gonflait jusqu'à saturation du disque (20Go de données à sauvegarder).

Le choix final s'est donc porté sur la commande xcopy accompagné du planificateur de tâches Windows.

1. Planification

  1. semaine, 1er disque. Le vendredi, création d'un dossier backup1 (f:\backup1) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.
  2. semaine, 2ème disque. Le vendredi, création d'un dossier backupa (f:\backupa) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.
  3. semaine, 1er disque. Le vendredi, création d'un dossier backup2 (f:\backup2) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.
  4. semaine, 2ème disque. Le vendredi, création d'un dossier backupb (f:\backupb) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.
  5. semaine, 1er disque. Le vendredi, création d'un dossier backup3 (f:\backup3) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.
  6. semaine, 2ème disque. Le vendredi, création d'un dossier backupc (f:\backupc) et copie des données à sauvegarder dans le dossier précédemment créé. Les autres jours de la semaine, copie des fichiers modifiés ou nouveaux.

2. Batch de sauvegarde

:: Auteur: Maximilien Cugnet
:: Nom: backup1.bat
:: Description: copie les fichiers de d:\commun, d:\utilisateurs, d:\administratif vers f:\backup1

:: Licence: Creative Commons by-sa http://creativecommons.org/licenses/by-sa/2.0/fr/

:: Créer le dossier  de backup s'il n'existe pas
if not exist f:\backup1 (
    md f:\backup1
    md f:\backup1\commun
    md f:\backup1\utilisateurs
    md f:\backup1\administratif
    )

:: réalise la copie
xcopy /e /d /y /c d:\commun f:\backup1\commun
xcopy /e /d /y /c d:\utilisateurs f:\backup1\utilisateurs
xcopy /e /d /y /c d:\administratif f:\backup1\administratif

:: efface le backup le plus ancien

if exist f:\backup2 rd /s /q f:\backup2

Nous utiliserons donc 6 batch différents pour les 6 semaines.

3. commandes utilisées

  • if not exist: test l'existence d'un fichier/dossier et exécute une commande si la condition est remplie.
  • md: Make Directory, créé un dossier.
  • xcopy: copie des données
    • /e copie les sous-dossiers y compris les sous-dossiers non vide.
    • /d copie les nouveaux fichiers et ls fichiers modifiés depuis la date de la dernière copie (comparaison entre le dossier d'origine et le dossier de destination.
    • /y ne demande pas de confirmation lors du remplacement de fichiers.
    • /c ne tient pas compte des erreurs (permet d'aller au fichier suivant si le fichier à copier est ouvert par ex.)
  • rd: Remove Directory, supprime un dossier.
    • /s supprime les données contenues dans le dossier.
    • /q mode silencieux, ne demande pas de confirmation lors de la suppression.

Commentaires


Votre commentaires :

Votre commentaire s'affichera après validation du titulaire du blog



Smileys: :);):'(:(:P8):O:D