Sauvegarder son site FTP automatiquement avec WinSCP
Afin de palier à l’utilisation d’un programme clé en main, qui consomme de la mémoire et qui ne garantie pas toujours un résultat optimal, je vous propose ici de mettre en place une solution de sauvegarde gratuite, simple et efficace de votre site FTP (Avis aux utilisateurs de WordPress, Joomla, Dotclear et autres plateformes de publications) sur une station de travail Windows. Il sera possible alors de planifier l’exécution de la sauvegarde via une tâche planifiée ou de la lancer manuellement en double-cliquant sur un raccourci.
Mise en place
Tout d’abord il est nécessaire d’installer ces 2 freewares : WinSCP pour transférer le contenu de votre choix de votre serveur FTP vers votre station et 7-Zip pour compresser et archiver votre contenu afin de le conserver précieusement par la suite (versionning)
Une fois l’installation terminée vous allez créer avec votre éditeur de texte 2 fichiers que vous allez nommer respectivement LaunchBackup.bat et backupscript.txt et que vous allez sauvegarder dans un répertoire nommé C:\MesSauvegardes
Le fichier LaunchBackup.bat est le fichier batch principal qui contient le code suivant:
REM Mise en forme de la date et de l'heure afin de créer un TIMESTAMP REM Le TIMESTAMP est une sorte d'étiquette que l'on ajoutera au nom REM du répertoire de sauvegarde afin de le rendre "unique" REM Une petite bidouille est nécessaire pour les heures inférieures à 10 REM Car elles ne contiennent qu'un seul chiffre set hoffset=%time:~0,2% if "%time:~0,1%"==" " set hoffset=0%time:~1,1% set ddmmaa_hhmmss=%date:~0,2%%date:~3,2%%date:~6,4%_%hoffset%%time:~3,2%%time:~6,2% REM On met en forme le futur nom de répertoire de sauvegarde set backupdirectory=bck_%ddmmaa_hhmmss% REM Maintenant on le créé md %backupdirectory% REM Et on rentre dedans afin qu'il soit répertoire actif cd %backupdirectory% REM On appelle notre scrip WINSCP nommé backupscript.txt "c:\program files\winscp\winscp.com" /script:"c:\MesSauvegardes\backupscript.txt" REM La copie est terminée, on peut sortir du répertoire en cours cd.. REM Afin de le sauvegarder avec notre archiveur 7-ZIP "c:\program files\7-Zip\7z.exe" a %backupdirectory%.zip %backupdirectory% REM On peut maintenant supprimer le répertoire que l'on a copié REM Car nous souhaitons uniquement conserver l'archive rd /S /Q %backupdirectory%
Le fichier backupscript.txt est le fichier de script WinSCP qui sera appelé par LaunchBackup.bat afin de réaliser la connexion et le transfert du contenu désiré vers votre station de travail Windows. Il contient le code suivant:
# Début du script WinSCP # Réponse automatique pendant l’exécution du script # On sort en cas d’erreur option batch on option confirm off # On se connecte à notre serveur FTP # open login:password@nomduserveur.com open ftplogin:motdepassesecret@adressedevotreftp # On active le mode de transfert binaire option transfer binary # On télécharge l’arborescence de notre choix # Qui sera stockée dans le répertoire actif définit dans le fichier BATCH # Ici je télécharge le répertoire /site/images de mon serveur get /site/images # On se déconnecte close # Et on sort de WinSCP pour retourner dans le batch principal exit
Démonstration du script
Nous pouvons donc passer à l’exécution du script LaunchBackup.bat afin de tester le fonctionnement.
Vous pouvez ajouter l’instruction pause à la fin de LaunchBackup.bat afin de diagnostiquer une éventuelle erreur … les fautes de frappes sont monnaie courante en scripting …
Tout semble bien se dérouler, si vous regarder dans C:\MesSauvegardes, les fichiers sont en cours de récupération dans un répertoire nommée bck_09042008_110657. Un TIMESTAMP a en effet été ajouté au nom du répertoire (09 Avril 2008 à 11h06m57s) afin d’identifier clairement la sauvegarde mais surtout de pouvoir conserver une multitude de versions de son site FTP.
Une fois la rapatriement des fichiers effectuer, le script passe à la dernière étape qui consiste à archiver le répertoire avec 7-Zip puis supprimer l’original. Comme vous pouvez le constater il ne nous reste plus que l’archive.
Vous pouvez maintenant créer un raccourci du fichier LaunchBackup.bat sur votre bureau ou votre barre de lancement rapide afin de lancer dès que vous le souhaitez votre sauvegarde.
De la même manière vous pouvez planifier une tâche Windows afin d’automatiser la sauvegarde de votre site FTP.
A vous de jouer !
Partagez cet article avec vos amis
Vous avez aimé cet article ? N'hésitez pas à le partager avec vos amis en cliquant sur les boutons ci-dessous :











Pingback: Sauvegarder un site FTP avec Cobian Backup
Pingback: Liste des clients SSH pour Windows