15Jul

Comment sauvegarder automatiquement vos fichiers de serveur Web avec WinSCP via FTP

Vous l'avez entendu encore et encore: sauvegardez vos données. Il existe de nombreuses solutions de sauvegarde, mais rien n'est mieux qu'une solution simple et gratuite. Donc, avec quelques lignes de code et un programme très utile appelé WinSCP, nous allons mettre en place une synchronisation automatique entre votre serveur FTP et votre ordinateur personnel.

FTP( File Transfer Protocol) est un protocole Internet qui permet aux utilisateurs de transférer des fichiers entre ordinateurs. Malgré son âge avancé( pensez à l'ère pré-TCP / IP), FTP et son protocole frère SFTP( Secure File Transfer Protocol) sont toujours très populaires aujourd'hui et sont considérés comme un moyen facile de transférer des fichiers localement et sur Internet. Il s'agit également d'un très bon moyen de conserver une sauvegarde à distance des fichiers importants que vous gardez sur votre serveur FTP.

Si vous ne voulez pas payer pour une solution FTP tierce, consultez cet article sur la façon de construire votre propre serveur FTP écrit par les gens de chez Lifehacker.

Configuration requise

  • Un serveur FTP et des informations d'accès
  • Un ordinateur Windows
  • Une copie de WinSCP( Windows uniquement)

Configuration de WinSCP

Une fois que vous avez téléchargé votre copie de WinSCP, installez le fichier. exe sur votre ordinateur. Ce n'est pas une mauvaise idée de commencer à se souvenir de votre adresse FTP, de votre nom d'utilisateur et de votre mot de passe pendant l'installation de WinSCP.

Maintenant que WinSCP est installé, nous allons créer et enregistrer un nouveau profil de session pour un accès plus facile plus tard. Dans l'écran de connexion, entrez votre nom d'hôte( ftp.howtogeek.com), votre nom d'utilisateur et votre mot de passe. Vous pouvez utiliser FTP ou SFTP, mais assurez-vous de changer le numéro de port du port approprié que votre hôte FTP vous a fourni. Puis cliquez sur Enregistrer pour enregistrer le profil. Ouvrez le profil pour vous connecter à votre serveur FTP.Cela vérifiera que vous avez tapé les informations d'identification correctes dans le profil.

Création du script

Nous allons créer un script simple qui se connecte à votre serveur FTP, indique à WinSCP où télécharger les fichiers manquants sur votre ordinateur, puis crée un fichier journal qui enregistre l'activité FTP.Allez-y et ouvrez le Bloc-notes sur votre ordinateur. Copiez le modèle de script suivant dans le bloc-notes:

option batch sur
option confirmez
ouvert [email protected]
cd sauvegardes
option transfert binaire
get / testremote * f: \ backups \ testlocal \ *
synchronise local f:\ backups \ testlocal testremote
exit

Voici une brève explication de ce qui se passe dans le script. WinSCP répondra négativement à toutes les invites pour éviter de bloquer le script. Ensuite, il écrasera automatiquement les fichiers lorsque vous y serez invité.Il se connecte ensuite à votre serveur FTP en utilisant le profil que nous avons créé plus tôt, change de répertoire( si nécessaire), et transfère le binaire( par opposition à ASCII).Enfin, il lit le répertoire FTP distant et transfère les fichiers dans le répertoire local spécifié.Pour encore plus d'options, consultez la page de script officielle WinSCP.

Maintenant, avant de modifier ou d'exécuter ce script, nous vous suggérons de créer des répertoires de test sur les cibles distantes et locales. La dernière chose que vous voulez est d'effacer accidentellement votre serveur FTP sans aucune sauvegarde. Alors créez un répertoire sur votre ordinateur appelé "testlocal"( nous l'avons créé sous f: \ backups) et un autre appelé "testremote" sur votre serveur FTP( nous l'avons créé à la racine).Une fois que vous exécutez le script et qu'il s'exécute avec succès, enregistrez-le sous "sync.txt" sur votre ordinateur( nous avons sauvegardé le nôtre dans notre dossier testlocal).Vous êtes maintenant prêt à automatiser le script.

Automatisation du script

Nous allons laisser Windows gérer l'automatisation en utilisant son planificateur de tâches intégré.Dans Windows 7, commencez par ouvrir le Panneau de configuration & gt;Système et sécurité & gt;Outils d'administration & gt;Planificateur de tâches.

Dans la colonne de droite, cliquez sur le bouton Créer une tâche de base.

Nommez et décrivez votre tâche, puis cliquez sur Suivant.

L'option suivante déterminera la fréquence d'exécution de la tâche. Nous avons choisi d'exécuter le script chaque fois que nous allumons notre ordinateur. Vous pouvez choisir une option moins fréquente comme Weekly pour l'exécuter moins souvent.

Sur l'écran suivant, choisissez "Démarrer un programme" et cliquez sur Suivant. Vous serez invité à rechercher un programme ou un script. Cliquez sur le bouton Parcourir et accédez à "C: \ Program Files \ WinSCP" pour sélectionner WinSCP.exe. En dessous, ajoutez "/ console /script=f:\backup\sync.txt /log=f:\backup\log.txt" à Ajouter des arguments. Veillez à modifier les arguments si votre fichier sync.txt se trouve dans un emplacement différent et si vous souhaitez générer le fichier journal dans un emplacement différent. Cliquez sur Suivant.

Vous verrez un résumé de votre tâche. Si cela semble correct, cliquez sur Terminer. Enfin, pour que la tâche fonctionne correctement, nous allons l'exécuter. Assurez-vous d'avoir au moins un fichier dans votre répertoire de test( c'est-à-dire "thisisatest.txt").Mettez en surbrillance la tâche que vous venez de créer et cliquez sur Exécuter dans la colonne de droite. Vous devriez voir apparaître une invite de commande, vous connecter à votre serveur FTP, puis synchroniser le( s) fichier( s).

Votre tâche de test devrait être terminée, et votre fichier de test devrait maintenant se trouver dans le dossier local spécifié.Si vous rencontrez des erreurs, vérifiez le fichier journal pour savoir pourquoi.

C'est tout ce qu'il y a! Vous avez maintenant une solution de sauvegarde gratuite qui gardera tous vos fichiers FTP synchronisés dans un dossier local. Si votre serveur FTP tombe en panne ou si vous supprimez accidentellement un fichier, vous pouvez récupérer la copie depuis votre ordinateur!