gsb2024/roles/nxc-traefik/files/savenextcloud.sh
2024-01-22 17:54:29 +01:00

34 lines
1013 B
Bash

#!/bin/bash
# Mettre le serveur NextCloud en mode maintenance
docker compose exec -u www-data app php occ maintenance:mode --on
# Extraire les dossiers de sauvegarde
cd /root/nxc
# Copie locale de la sauvegarde
rsync -Aavx nextcloud/ nextcloud-dirbkp_`date +"%Y%m%d"`/
# Base de données MySQL/MariaDB
docker compose exec db mysqldump -u nextcloud -pAzerty1+ nextcloud > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak
# Sortir du mode maintenance
docker compose exec -u www-data app php occ maintenance:mode --off
# création d'une archive
tar cvfz nxc.tgz nextcloud-sqlbkp_`date +"%Y%m%d"`.bak nextcloud-dirbkp_`date +"%Y%m%d"`
# envoie sur s-backup
BDIR=/home/backup/s-nxc
# Préparation des dossiers qui vont accueillir les données à sauvegarder
mkdir -p "${BDIR}"
# Sauvegarde du fichier nxc.tgz vers la machine s-backup
scp root@s-nxc:/root/nxc/nxc.tgz "${BDIR}/"
# Copie du fichier nxc.tgz de s-nxc vers s-backup
scp "${BDIR}/nxc.tgz" root@s-backup:/root/tools/ansible/gsb2024/roles/nxc-traefik/files