Aller au contenu

Backups

Les bakcups sont dédupliqué (gain de place) et encrypté (gain de sécurité). Pour celà, on utilise borg backup.

Configuration

La configuration des backups est réalisé avec des scripts bash personnels.

En effet, comme tous les services sont géré avec

Installation et setup

Voici les étapes suivies pour installer les backups. L'objectif et de pouvoir reproduire, comprendre et si nécéssaire, trouver les érreures...

Installation

sudo apt install borgbackup

Setup env file

Changer la destination du repo, et indiquer la passphrase

cp .env.exemple .env
vim .env

Lancement d'un bakcup manuel

bash backup_all.sh

Automatisation

Les job cron est configuré dans /etc/cron.d/backups

Il utilise un utilisateur "backup" existant par default (34:34) avec des droits suplémentair :

sudo usermod -aG docker syslog backup

et un fichier sudoer /etc/sudoers.d/backup

backup ALL=(ALL) NOPASSWD:SETENV: /usr/bin/borg, /usr/bin/docker, /bin/mkdir, /bin/rm, /bin/cp, /usr/bin/mount

External storage

OVH propose un stockage aditionnel inclus dans l'offre OVH Bare Metal. On peut y accéder avec FTP ou NFS (ou CIRF mais je connais pas ce protocal).

Settup

Voir la documentation OVH ici : https://help.ovhcloud.com/csm/fr-dedicated-servers-services-backup-storage?id=kb_article_view&sysparm_article=KB0043993

  1. sudo apt install nfs-common
  2. Configurer le backup storage avec option NFS
  3. Monter le disque sur le serveur :
sudo mkdir -p /mnt/ovh-backup
sudo mount -t nfs ftpback-rbx3-371.ovh.net:/export/ftpbackup/ns316490.ip-37-187-129.eu /mnt/ovh-backup
sudo -u backup mkdir /mnt/ovh-backup/borg
  1. Synchroniser le repo
sudo -u backup /opt/infra/backups/replicate_backup.sh

Restoration

Pour le moment, rien n'est automatique. Il faudra:

  1. sudo -u backup borg list /srv/backups/borg
  2. sudo -u backup ./restore.sh /opt/infra/backups/config/wordpress.env wordpress_sql-2025-09-17_09-26 ./restore/wordpress