Xivo backup ftp

De SLM - MediaWiki

mettre les paquets à jour

apt-get update

changer la liste de dépôt si apt-get update affiche des messages d'erreur

cd /etc/apt
find . -type f -exec sed -i 's/ftp.fr.debian.org/archive.debian.org/g' {} \;
find . -type f -exec sed -i 's/volatile.debian.org/archive.debian.org/g' {} \;
find . -type f -exec sed -i 's/security.debian.org/archive.debian.org\/debian-security/g' {} \;

Installer client ftp

apt-get install ftp

On va se servir de Cron pour la planification des taches

activer Cron au démarrage

update-rc.d cron defaults

Créer backup-ftp.sh en prenant soin de modifier les variables

vi /etc/custom/backup-ftp.sh
 1 #!/bin/sh
 2 
 3 # Definition des variables.
 4 CLIENT="Nom du client"
 5 HOST_FTP="IP du serveur FTP"
 6 USER_FTP="user ftp"
 7 PASSWD_FTP="Mot de passe ftp"
 8 date=$(date '+%d-%m-%Y')
 9 backups="/home/backups"
10 data="/home/backups/data.tar.gz"
11 db="/home/backups/db.tar.gz"
12 
13 # affiche la date
14 echo $date
15 
16 # Creation du repertoire de backup si ils n'existent pas
17 if [ ! -d $backups ]
18 	then
19 		echo "le repertoire de sauvegarde n'existe pas"
20 		echo "creation du repertoire $backups"
21 		/bin/mkdir $backups
22 		/bin/chmod 777 $backups
23 	else
24 		echo "le repertoire de sauvegarde existe"
25 fi
26 
27 # Compression des fichiers de sauvegarde
28 echo "debut de la compression des fichiers de sauvegarde"
29 /usr/sbin/pf-xivo-backup data $data
30 /usr/sbin/pf-xivo-backup db $db
31 echo "fin de la compression des fichiers de sauvegarde"
32 
33 # Copie du fichier de sauvegarde vers le serveur FTP
34 echo "connexion au serveur FTP"
35 ftp -n $HOST_FTP <<END_SCRIPT
36 quote USER $USER_FTP
37 quote PASS $PASSWD_FTP
38 mkdir $CLIENT/$date
39 cd $CLIENT/$date
40 put $data data.tar.gz
41 put $db db.tar.gz
42 bye
43 END_SCRIPT
44 echo "fin du transfert"
45 exit 0

mettre les bon droits sur le fichier

chmod +X /etc/custom/backup-ftp.sh

tester en lançant la commande (ça peut prendre plusieurs minute)

sh /etc/cron.monthly/backup-ftp.sh

automatiser la sauvegarde

vi /etc/crontab

ajouter les 2 lignes ci-dessous à la fin du fichier

# Sauvegarde automatique vers le serveur ftp tous les 1er du mois à 4h00
00 4    1 * *   root    sh /etc/custom/backup-ftp.sh