Guide · Sauvegardes
Surveiller vos sauvegardes Duplicati
Les notifications de Duplicati ne fonctionnent que si Duplicati tourne encore. Si le planificateur s'arrête, que la machine est éteinte, ou que le job est silencieusement désactivé, personne n'est prévenu. Un check-in depuis le hook natif run-script-after de Duplicati prouve que chaque sauvegarde s'est bien terminée, et fait le check-in sur /fail dès qu'une exécution échoue.
1. Créez un check
Créez un check dans Mortemain avec le même planning que votre job de sauvegarde, plus une fenêtre de grâce pour les exécutions lentes, puis copiez son URL de ping.
2. Dirigez Duplicati vers un script après le job
Ouvrez la sauvegarde dans l'interface web de Duplicati, allez dans Options → Advanced options, cliquez sur Edit as text, et ajoutez :
--run-script-after=/etc/duplicati/duplicati-ping.sh
La même option fonctionne en mode non supervisé en ligne de commande :
duplicati-cli backup "file:///backups/target" /home/user/data --run-script-after=/etc/duplicati/duplicati-ping.sh
Rendez le script exécutable une bonne fois pour toutes, sinon Duplicati ne pourra pas le lancer :
chmod +x /etc/duplicati/duplicati-ping.sh
3. Lisez le résultat et faites le check-in
Duplicati transmet le résultat de l'exécution au script via la variable d'environnement DUPLICATI__PARSED_RESULT, qui vaut Success, Warning, Error ou Fatal. Traitez Success et Warning comme une sauvegarde réussie, et faites le check-in sur /fail pour tout le reste :
#!/bin/sh # défini en --run-script-after dans Duplicati URL="https://ping.mortemain.com/votre-uuid-de-check" case "$DUPLICATI__PARSED_RESULT" in Success|Warning) curl -fsS -m 10 "$URL" ;; *) curl -fsS -m 10 "$URL/fail" ;; esac
Duplicati tourne sous Windows ? Utilisez un script .bat ou PowerShell à la place : Duplicati définit les mêmes variables d'environnement DUPLICATI__* dans les deux cas.
4. Optionnel : détecter une sauvegarde bloquée, pas seulement en échec
Une sauvegarde qui ne se termine jamais ne déclenche pas run-script-after du tout. Ajoutez un --run-script-before correspondant qui fait le check-in sur /start au démarrage de l'exécution : Mortemain alerte alors aussi si une sauvegarde démarrée ne fait jamais le check-in de fin :
#!/bin/sh curl -fsS -m 10 "https://ping.mortemain.com/votre-uuid-de-check/start"
--run-script-before=/etc/duplicati/duplicati-start.sh --run-script-after=/etc/duplicati/duplicati-ping.sh
Testez
Cliquez sur Run now sur la sauvegarde : le check passe actif dès que le script s'exécute. Renommez ensuite le dossier de destination pour faire échouer la prochaine exécution, et confirmez que l'alerte arrive immédiatement, c'est exactement le mode de panne que les e-mails de Duplicati peuvent manquer si le planificateur lui-même s'arrête.