View difference between Paste ID: ZvazqxNg and WJfsDXhn
SHOW: | | - or go back to the newest paste.
1-
#!/bin/bash
1+
2
#Par Rafael 'R@f' Keramidas
3
#Backup complet d'un dossier vers un serveur FTP. Possibilité de supprimer les archives trop vielles.
4
#Infos FTP
5
FTPHOST=""
6
FTPUSER=""
7
FTPPASS=""
8
FTPPORT="21"
9
FTPDIR="backup/"
10
#Dossier cible pour le backup
11
BACKUPDIR=""
12
#Date d'aujourd'hui
13
NOW="$(date +"%d-%m-%Y")"
14
#Nom du backup (date + extension .tar.gz)
15
BACKUPNAME="$NOW.tar.gz"
16
#Nombre de jours que les backups doivent être conservés
17
D=14
18
DTODEL="$(date +%d-%m-%Y --date "$D days ago").tar.gz"
19
20
#Si le dossier existe
21
if [ -e $1 ] ; then
22
echo "Lancement du script de backup FTP..."
23
echo "Compression du dossier $BACKUPDIR ..."
24
tar -cvzPf $BACKUPNAME $BACKUPDIR
25
echo "Envoi du fichier sur le serveur : $FTPHOST"
26
ftp -i -n $FTPHOST $FTPPORT <<END_SCRIPT
27
quote USER $FTPUSER
28
quote PASS $FTPPASS
29
pwd
30
cd $FTPDIR
31
binary
32
put $BACKUPNAME
33
pwd
34
rm $DTODEL
35
quit
36
END_SCRIPT
37
echo "Fin de l'envoi du fichier sur le serveur FTP."
38
echo "Suppression du fichier de sauvegarde."
39
rm $BACKUPNAME
40
echo "Sauvegarde terminée !"
41
#Si le dossier n'existe pas
42
else
43
echo "Le dossier '$BACKUPDIR' est inexistant !"
44
exit 1
45
fi