🏳️‍🌈♿️👩‍🎨🌱 En février, je remets 3% de mes ventes à des organismes qui favorisent la diversité, les arts et l'environnement 🏳️‍🌈♿️👩‍🎨🌱

Potion Bottle Icon

Manuel d'alchimie du code

Potion Bottle Icon

Script de sauvegarde manuelle Borg pour Yunohost

Dans cet article, je te présente un script de sauvegarde manuelle Borg pour Yunohost. Sur un de mes serveurs, l'instance de Borg Backup crashe constamment lors de la sauvegarde automatisée, pour une raison que je n'ai pas réussi à diagnostiquer.

J'ai donc écris un script bash qui me permet de faire la sauvegarde de toutes mes applications manuellement. Il remplace le script configuré par défaut lors de l'installation de Borg. Je tenais à le partager ici pour la communauté.

Le script

Ce script effectue une boucle sur la liste de toutes les applications installées avec
/usr/bin/yunohost app list --json. Pour chacune, j'utilise l'outil de manipulation de fichiers json jq pour extraire seulement le nom interne des applications. Ce qui me donne une liste de noms.

Représentation graphique du flux de traitement du script de sauvegarde manuelle Borg sur Yunohost

Dans la boucle, je vais le traitement suivant:

#!/bin/bash
# Sauvegarde Borg Manuelle
# /root/borg_manual_backup.sh

export n8n_url="https://adresse.de.n8n.sur.mon.serveur" export n8n_webhook_path="une clé secrète ici"

for app in $(/usr/bin/yunohost app list --json | jq '.apps | .[] | .id' | tr -d '"') do
  echo "=== Sauvegarde de $app démarrée ==="
  /usr/bin/yunohost backup create -n "auto_$app" --method borg_app --apps "$app" &> /var/log/backup_log.txt
  echo "=== Sauvegarde de $app terminée ==="
  /usr/bin/curl -XPOST "https://${n8n_url}/webhook/${n8n_webhook_path}/borg-backupnc-complet/${app}" done

Ce script est ensuite exécuté par l'utilitaire de tâches planifiées cron à chaque jour avec cette entrée:

0 0 * * * /bin/bash /root/borg_manual_backup.sh

Pour éditer le fichier de configuration de cron, j'utilise crontab -e en tant que root.

Bien que le système par défaut pour mettre des tâches en automatisation sur Yunohost soit les timers de systemd, cron est toujours disponible.

J'espère que cette technique de sauvegarde manuelle Borg pour Yunohost te sera utile !

Articles connexes

Abonne-toi au flux RSS pour ne rien manquer.

Étiquettes