[Linux] Sauvegarder automatiquement le contenu d'un serveur FTP distant

Tout à l’heure, j’ai tenté de mettre en place un système permettant de synchroniser automatiquement mon compte Legtux et mon DockStar. Pour cela, j’ai d’abord cherché un bash tout fait sur Internet pour éviter de coder (oui, je suis extrêmement fainéant en période de vacances scolaires). Problème: je n’ai rien trouvé d’intéressant (et pourtant c’est quelque chose de facile à faire). J’ai donc tenté de coder quelque chose (je suis novice en bash) et je suis arrivé à quelque chose d’assez satisfaisant. Voici donc la marche à suivre pour sauvegarder n’importe quel serveur FTP:

Commencez par installer le paquet lftp:

apt-get install lftp

Puis on créé un nouveau bash:

nano sauvegarde.sh

Et mettez-y ceci (pensez à changer ce qui est propre à votre site:

#!/bin/bash
# Definition du numero du jour
numjour=$((`date +%w`+1))
# On lance la sauvegarde
lftp ftp://user:pass@domaine.org -e "mirror / /dossier/temporaire ; quit"
# On compresse la sauvegarde
rm domaine.$numjour.zip
zip -r domaine.$numjour.zip /dossier/temporaire
# On nettoie le repertoire temporaire
rm -r /dossier/temporaire/*
rm /dossier/temporaire/*
# On quitte
exit

Ensuite libre à vous de faire ce que vous voulez. Vous pouvez par exemple créer une tâche cron pour que tout s’effectue automatiquement. Les sauvegardes seront gardés 7 jours avant d’être remplacés par la nouvelle.