Documente Academic
Documente Profesional
Documente Cultură
Problmatique Solution
y y y
Lancement de la tche Sauvegarde sur serveur distant Sauvegarde sur disque externe
Problmatique
Lorsqu'on veut faire une sauvegarde automatique de ses fichiers personnels sous Windows, il y a la possibilit d'utiliser l'utilitaire de sauvegarde. Mais le fichier gnr est malheureusement dans un format spcial sur lequel l'on n'a pas la main. Impossible par exemple de rcuprer une archive et de l'extraire sous UNIX. D'autre part, la gestion des sauvegardes ne s'effectue correctement que si la machine est allume au moment programm. Vous avez aussi la possibilit d'utiliser un autre logiciel spcial.. mais de la mme faon, rien n'implique que vous serez capable de l'utiliser sous un autre systme, ou tout simplement sur une autre machine !
Solution
Pour effectuer une sauvegarde automatique exportable et gratuite, rien de plus simple. Tout d'abord, il faut insister sur le fait de ne pas raliser de sauvegarde sur le mme disque ou la mme nappe que le disque partir duquel on ralise une sauvegarde. En effet, si le disque tombe en panne, toutes les donnes du disque, y compris les sauvegarges sont perdues. Sur une mme nappe, il peut arriver que la panne d'un disque fasse griller le second disque galement - j'en sais quelque chose, j'ai essuy ce dsagrment -. Quelque soit la sauvegarde, il vaut donc mieux s'orienter vers une sauvegarde externe, sur disque ou serveur.
Lancement de la tche
Dans tous les cas, la tche de qauvegarde doit tre lance automatiquement. Les logiciels de sauvegarde proposent en gnral des sauvegardes heures fixes. Dans ce cas, on tombe nouveau dans le mme problme : si la machine n'est pas allmue, la sauvegarde ne s'effectuera pas. Le plus simple serait de pouvoir lancer la ta^che soit au dmarrage (ce qui allonge la dure de dmarrage) soit l'extinction (malheureusement, Windows n'intgre pas facilement de procdures l'extinction, contrairement UNIX) ou encore pendant un moment d'inactivit.
C'est ce que propose schtasks, planificateurs de tches sous Windows. schtasks est intgr Windows. Il permet de programmer l'excution de tches, de manire assez souple. Pour connatre ses capacits, n'hsitez pas consulter l'aide. ce qui nous intresse plus particulirement est l'option /onidle, qui signifie que la tche sera excute lorsque l'ordinateur est inactif. Vous pouvez, par exemple, crer la tche suivante : schtasks /create /sc onidle /i 10 /tn Sauvegarde /tr F:\scripts\sauvegarde.bat /ru System Cette tche nomm Sauvegarde, excute F:\scripts\sauvegarde.bat aprs 10 minutes d'inactivit pour le compte System Il ne reste plus qu' crer le fichier sauvegarde.bat.
tar.exe gzip.exe
Installez les deux excutables dans le rpertoire Windows afin de disposer en standard des fonctionnalits avec la console DOS. Crer un batch (.bat) grant la sauvegarde par exemple :
@echo off REM setup des variables set HOME_DIR=Backup set TAR_FILE=BACKUP.TAR set GZ_FILE=BACKUP.TAZ set FTP_SERVER=adresse_du_serveur_FTP set USER=utilisateur set PASS=mot_de_passe set TIMESTAMP=%date:~6,4%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2% cd %HOME_DIR%
IF EXIST T:\%HOME_DIR% (rmdir /S /Q T:\%HOME_DIR% ) IF EXIST T:\%GZ_FILE% (del /Q T:\%GZ_FILE% ) IF EXIST T:\%TAR_FILE% (del /Q T:\%TAR_FILE% ) mkdir T:\%HOME_DIR% echo Copie des fichiers sauver XCOPY "F:\Mes Documents\*.*" T:\%HOME_DIR% /S /A /H /V /Y if errorlevel 5 goto diskspace if errorlevel 4 goto lowmemory if errorlevel 2 goto abort if errorlevel 1 goto nofile REM if errorlevel 0 goto compression :nofile echo Il n'existe pas de fichiers copier. :lowmemory echo Mmoire insuffisante pour copier les fichiers ou echo lecteur ou syntaxe de ligne de commande non valide. :abort echo Vous avez appuy sur Ctrl+C pour mettre fin la copie. :diskspace echo Une erreur d'criture s'est produite sur le disque. :compression echo Compression des fichiers ... tar -cvf T:/%TAR_FILE% T:/%HOME_DIR% REM gzip T:\%TAR_FILE% echo compression acheve REM fichiers zip existe, transfert ftp set ftpcmd=ftpcmd.txt echo open %FTP_SERVER% > %ftpcmd% echo USER %USER% %PASS% >> %ftpcmd% echo bin >> %ftpcmd% echo cd ArchiveLog >> %ftpcmd% echo put T:\%TAR_FILE% BACKUP-%TIMESTAMP%.TAR >> %ftpcmd% echo quit >> %ftpcmd% echo bye >> %ftpcmd% FTP -i -v -n -s:%ftpcmd% del /Q %ftpcmd% IF EXIST T:\%HOME_DIR% ( rmdir /S /Q T:\%HOME_DIR% ) IF EXIST T:\%GZ_FILE% (del /Q T:\%GZ_FILE% ) :exit
Inconvnients
L'inconvnient de cette mthode est qu'elle ncessite d'un ct de l'espace disque pour copier, compresser les fichiers avant d'envoyer l'archive sur le serveur FTP. D'autre part, comme il n'existe pas de sauvegarde incrmentale, cela prend rapidement de la place sur le serveur et il faut faire rgulirement du nettoyage. Pour aller plus loin Dans le cas d'une sauvegarde sur serveur, si vous avez la main sur toutes les machines, vous pouvez mettre en place une solution de type Amanda. Ce systme de suavegarde clientserveur libre est disponible pour toutes les plateformes.
remarque
Par clef USB, l'on peut entendre clef USB, mais aussi toute autre mmoire autoalimente comme une carte SD, Compact Flash, etc. L'avantage est que, par exemple, l'on peut utiliser une vieille carte d'un appareil photo ou d'un PDA pour la sauvegarde des donnes PC, ou tout simplement pouvoir les interchanger. Le disque dur peut tre soit USB soit rseau. Mais il faut s'assurer dans tous les cas qu'il ne soit pas en veille au moment de la sauvegarde. En effet, la veille peut poser des problmes de connexion. Si l'utilitaire de sauvegarde tente de se connecter et qu'il n'y arrive pas dans le laps de temps ncessaire au redmarrage du disque, alors la sauvegarde ne s'effectuera pas. Ensuite, ralisez les tapes suivantes :
y
@echo off xcopy f:\"Mes documents" Z:\"Mes documents" /M /D /S /E /V /H /R /I /Y echo Sauvegarde ralise > sauvegarde.log xcopy s'occupe de la sauvegarde. Les options prsentes ici permettent de ne sauver que les fichiers ayant l'attribut archive, modifis depuis la dernire sauvegarde, et dans tous les sousrpertoires partir de la racine Mes documents. L'intrt de ne choisir que les fichiers avec l'attribut archive permet de slectionner plus finement les fichiers sauver automatiquement et ceux qui n'ont aucun intrt. Pour plus d'options, veuillez consulter l'aide xcopy.
Remarque
xcopy ne permet que de copier des fichiers de faon fine mais sans pouvoir les supprimer. Rapidement, la gestion des copies n'est plus l'image de la version d'origine. Pour aller plus loin, il faut utiliser robocopy qui permet d'obtenir des copies plus fidles et surtout capable de supprimer dans la copie les fichiers supprimer dans l'orginal. De plus, robocopy est diponible en version DOS ou GUI. Pour en savoir plus sur robocopy, consultez le site Microsoft.
Avec robocopy, un batch tel que celui-ci sera sufficant pour copier en "miroir" :
@echo off REM sauvegarde du disque local cls color 1F echo echo sauvegarde de la clef USB echo ou du disque local echo echo. echo Dbut de sauvegarde robocopy . D:\Save\ /MIR /Z /R:2 /W:10 echo Fin de sauvegarde
Il faudra penser installer robocopy soit dans le mme rpertoire que le batch, soit dans le rpertoire system de la machine hte. La premire copie s'excutera de faon intgrale, les suivantes n'effectueront que la diffrence (delta) et seront plus rapide.
Remarque
Pour un lancement simplifi ou automatique, il faudra utiliser autorun.inf la racine du medium. Pour aller plus loin Cette solution peut tre utile dans le cas d'un travailleur nomade qui pourra donc emmener partout une copie de ses documents sur la clef USB. Cependant, si l'on modifie les donnes sur la clef, il faut les resynchroniser de temps en temps dans l'autre sens, ce qui devient vite ingrable. La solution la plus simple consiste alors a dfinir Mes documents sur la clef USB, sur laquelle on enregistre tous les documents personnels et importants, ncessitant une sauvegarde. La sauvegarde est faite de la clef USB vers un disque local - et pourquoi pas de l vers un serveur -. Ainsi, l'on peut emporter la clef qui contient l'original des donnes qui peuvent vivre leur vie sur d'autres machines, d'autres systmes et seront automatiquement sauvegardes par le script. En cas de plantage de l'ordinateur, la clef USB est prserve. L'on peut mme continuer travailler l'aide d'un livecd...