Sauvegarde WordPress + Bdd + fichiers de conf
Pour faire la sauvegarde de mon WordPress, j’utilise 2 scripts. le premier sauvegarde en local le site, la bdd et des fichiers de conf.
Le second rapatrie la sauvegarde sur ma machine des que je lance le Bash Ubuntu sous Windows 10.
( ^^ Oui j’ai rangé mon Ubuntu pour une machine sous Windows 10 car les jeux de type Battlefield 1/Call of Duty et autres Fornite ne sont malheureusement pas portés/compatible Linux .. mais ceci n’est pas le sujet ^^)
J’édite pour cela mon .bashrc et j’y rentre 3 petites commandes a la fin du fichier.
1 |
$ vim .bashrc |
Eval permet de chargez les variables dans l’environnement.
ssh-add pour n’avoir a taper qu’une seule fois la passphrase de la clé pour toute la durée de la session.
script_download_wordpress.sh est le second script
1 2 3 |
eval `ssh-agent -s` ssh-add sh /home/bef/script_download_wordpress.sh |
Premier script, coté serveur WordPress
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#!/bin/bash # Sauvegarde site WordPress + BDD Mysql + fichiers de conf # Variable date DATE=$(date +%Y-%m-%d) # Destination de la sauvegarde DESTINATION=/home/bef/wordpress-$DATE # Variable destination /bin/mkdir $DESTINATION # Création de l'archive et enregistrement dans le répertoire destination cd /var/www/ /bin/tar -cjf $DESTINATION/wordpress-$DATE.tar.bz2 wordpress # Sauvegarde mysql /usr/bin/mysqldump --user=<strong>MON_USER</strong> --password='<strong>MON_MDP</strong>' --databases <strong>MA_BDD</strong> | /bin/gzip > $DESTINATION/dump-BDD-wordpres$DATE # Copie fichier de conf /bin/cp /etc/nginx/blocage_ip.conf $DESTINATION/ /bin/cp /etc/nginx/nginx.conf $DESTINATION/ /bin/cp /etc/iptables/rules.v4 $DESTINATION/ /bin/cp /etc/nginx/sites-available/wordpress $DESTINATION/ /bin/cp /usr/local/sbin/backup_full_wordpress.sh $DESTINATION/ /bin/cp /etc/exim4/update-exim4.conf.conf $DESTINATION/ # Envoi mail de confirmation fin de sauvegarde echo "Sauvegarde it.izero.fr"-$DATE | mail -s "Fin de la sauvegarde" <strong>mon_email@domaine.local</strong> |
Ne pas oublier de faire un cron
1 |
30 07 * * 1 /usr/local/sbin/backup_full_wordpress.sh |
Le second script, sur mon pc
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!/bin/bash read -r -p "Télécharger la sauvegarde du wordpress it.izero.fr ? [y/N] " response case "$response" in [yY][eE][sS]|[yY]) echo "Lancement du téléchargement de la sauvegarde IT.IZERO.FR" scp -P 2223 -rp it.izero.fr:/home/bef/Sauvegarde_Wordpress/ /mnt/d/FTP/Sauvegarde\ IZERO/ echo "Suppression du repertoire distant" ssh -p 2223 it.izero.fr 'sudo find /home/bef/Sauvegarde_Wordpress/ -mindepth 1 -delete -print' echo "Sauvegarde OK" ;; *) echo "OK bonne journee" ;; esac |
En images
Au lancement du shell
Une fois la clé ajouté, il enchaine sur la sauvegarde
Si non, on récupère la main
Si oui, le download s’effectue, puis il supprime la source.
Voila
c’est pas ouf, mais ça automatise et comme je me connecte tous les jours a ma machine, je récupère mes sauvegardes.