Debian : Sauvegarde de mes serveurs



Je gère deux serveurs VPS (Virtual Private Serveur) hébergés chez OVH. Pour la sauvegarde quotidiennes des données de mes sites web, j'effectue une sauvegarde croisée des serveurs de la manière suivante :

  1. Sur le serveur VPS1 :

    • Sauvegarder les données des sites web dans un dossier Backups. Les fichiers auront un préfixe VPS1_
    • Créer un crontab qui va exécuter cette sauvegarde chaque nuit
  2. Sur le serveur VPS2 :

    • Sauvegarder les données des sites web dans un dossier Backups. Les fichiers auront un préfixe VPS2_
    • Créer un crontab qui va exécuter cette sauvegarde chaque nuit

1 - Sauvegarde des données du serveur VPS1

Sur le serveur VPS1, je crée un script backup-VPS1.sh suivant :

#!/bin/bash
#
#  sauvegarder les données du sevreur VPS1 
#  puis les transférer vers le serveur ZIDOL (DauTien!251.vps)
#  à faire chaque nuit

cd /home/debian/Backups
# backup diendan.org 
tar zcf VPS1_plone4_diendan.tar.gz /plone4/diendan
# backup tcs-home.org
tar zcf VPS1_plone4_tcshome.tar.gz /plone4/tcs-home
# backup wordpress folder and DB
mysqldump -u phuoc -ppcao.7513 --routines bauxitev -r VPS1_boxitvn_db.sql
tar -czf VPS1_boxitvn_wp.tar.gz /var/www/bauxitev

Ensuite, je crée un cronjob pour l’exécuter chaque nuit à 3h :

crontab -e

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
0 3 * * * /home/debian/backup-VPS1.sh

2 - Sauvegarde des données du serveur VPS2

Sur le serveur VPS2, je crée un script backup-VPSS.sh suivant :

#!/bin/bash
#
## sauvegarder les données du sevreur VPS-SENG 
#  à faire chaque nuit

# backup ctp_blog database
cp /home/debian/pyramid/ctp_blogr/ctp_blogr.sqlite VPSS_ctp_blogr.sqlite
tar -czf VPSS_ctp_blogr.sqlite.tar.gz /home/debian/pyramid/ctp_blogr/ctp_blogr.sqlite
# backup sunyata database
cp /home/debian/pyramid/cao_sunyata/cao_sunyata.sqlite VPSS_cao_sunyata.sqlite
tar -czf VPSS_cao_sunyata.sqlite.tar.gz /home/debian/pyramid/cao_sunyata/cao_sunyata.sqlite

# tranférer les fichiers tar vers le serveur VPS1
scp -P 2222 /home/debian/Backups/VPSS_*.* debian@diendan.org:/home/debian/Backups/

Ensuite, je crée un cronjob pour l’exécuter chaque nuit à 2h :

crontab -e

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
0 2 * * * /home/debian/backup-VPS-SENG.sh

3 - Récupérer les données du serveur VPS1

Enfin, je crée un 2eme script backup-ZIDOL.sh suivant :

#!/bin/bash
#
## transferer les backups du serveur VPS1
#  à faire chaque  dimanche

# tranférer les fichiers backup du serveur  ZIDOL
scp -P 2222 debian@diendan.org:/home/debian/Backups/VPS1_*.*  /home/debian/Backups

et j'ajoute un ligne dans la crontab :

0 4 * * 1 /home/debian/backup-ZIDOL.sh

That's it.


Publié le : 03-06-2025 - 14:45