[Borg] Backup via Borg qui ne fonctionne plus (lock)

Bonjour tout le monde,

J’ai cherché sur le forum sans trouver de solutions alors j’ouvre un post pour au moins regrouper les différentes investigations et avoir un peu d’aide pour trouver une solution.

Mon serveur YunoHost

Matériel: VPS en ligne
Version de YunoHost: :

# yunohost --version
yunohost: 
  repo: stable
  version: 11.2.11.3
yunohost-admin: 
  repo: stable
  version: 11.2.5
moulinette: 
  repo: stable
  version: 11.2
ssowat: 
  repo: stable
  version: 11.2

J’ai accès à mon serveur : En SSH et par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modifications particulières sur votre instance ? : non, à part les mises à jours régulières.

Description du problème

J’ai deux serveurs Yunohost qui se sauvegardent l’un sur l’autre. Le serveur A envoie ses backups sur le serveur B et inversement.

Les backups sur serveur A vers le serveur B ne marchent plus. Les backups du serveur B vers le serveur A marchent toujours.

Donc, voici ce que je vois sur le serveur A :

# yunohost service log borg
journalctl: 
  - -- Journal begins at Sun 2023-10-15 19:15:33 UTC, ends at Tue 2024-05-07 12:52:15 UTC. --
  - May 07 00:03:43 sudo[461620]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_gitea --method borg_app --apps gitea
  - May 07 00:03:43 sudo[461620]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:04:21 sudo[461620]: pam_unix(sudo:session): session closed for user root
  - May 07 00:04:22 sudo[462520]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/test ! -f /etc/yunohost/apps/nextcloud/scripts/backup
  - May 07 00:04:22 sudo[462520]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:04:22 sudo[462520]: pam_unix(sudo:session): session closed for user root
  - May 07 00:04:22 sudo[462529]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_nextcloud --method borg_app --apps nextcloud
  - May 07 00:04:22 sudo[462529]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:12:26 sudo[462529]: pam_unix(sudo:session): session closed for user root
  - May 07 00:12:26 sudo[464256]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/test ! -f /etc/yunohost/apps/rainloop/scripts/backup
  - May 07 00:12:26 sudo[464256]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:12:26 sudo[464256]: pam_unix(sudo:session): session closed for user root
  - May 07 00:12:26 sudo[464267]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_rainloop --method borg_app --apps rainloop
  - May 07 00:12:26 sudo[464267]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:12:58 sudo[464267]: pam_unix(sudo:session): session closed for user root
  - May 07 00:12:58 sudo[464956]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/test ! -f /etc/yunohost/apps/redirect/scripts/backup
  - May 07 00:12:58 sudo[464956]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:12:58 sudo[464956]: pam_unix(sudo:session): session closed for user root
  - May 07 00:12:58 sudo[464965]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_redirect --method borg_app --apps redirect
  - May 07 00:12:58 sudo[464965]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:13:20 sudo[464965]: pam_unix(sudo:session): session closed for user root
  - May 07 00:13:21 sudo[465157]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/test ! -f /etc/yunohost/apps/synapse/scripts/backup
  - May 07 00:13:21 sudo[465157]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:13:21 sudo[465157]: pam_unix(sudo:session): session closed for user root
  - May 07 00:13:21 sudo[465168]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_synapse --method borg_app --apps synapse
  - May 07 00:13:21 sudo[465168]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:13:30 sudo[465629]:     root : PWD=/var/lib/postgresql ; USER=postgres ; COMMAND=/bin/bash --login -c pg_dump synapse
  - May 07 00:13:30 sudo[465629]: pam_unix(sudo:session): session opened for user postgres(uid=103) by (uid=0)
  - May 07 00:13:37 sudo[465629]: pam_unix(sudo:session): session closed for user postgres
  - May 07 00:14:47 sudo[465168]: pam_unix(sudo:session): session closed for user root
  - May 07 00:14:47 sudo[466445]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/test ! -f /etc/yunohost/apps/vaultwarden/scripts/backup
  - May 07 00:14:47 sudo[466445]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:14:47 sudo[466445]: pam_unix(sudo:session): session closed for user root
  - May 07 00:14:47 sudo[466454]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost backup create -n auto_vaultwarden --method borg_app --apps vaultwarden
  - May 07 00:14:47 sudo[466454]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:15:15 sudo[466454]: pam_unix(sudo:session): session closed for user root
  - May 07 00:15:15 sudo[467108]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost app setting borg repository
  - May 07 00:15:15 sudo[467108]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:15:17 sudo[467108]: pam_unix(sudo:session): session closed for user root
  - May 07 00:15:17 sudo[467117]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost app setting borg mailalert
  - May 07 00:15:17 sudo[467117]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:15:18 sudo[467117]: pam_unix(sudo:session): session closed for user root
  - May 07 00:15:18 sudo[467126]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost app setting borg state -v failed
  - May 07 00:15:18 sudo[467126]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
  - May 07 00:15:19 sudo[467126]: pam_unix(sudo:session): session closed for user root
  - May 07 00:15:20 sudo[455713]: pam_unix(sudo:session): session closed for user root
  - May 07 00:15:21 systemd[1]: borg.service: Main process exited, code=exited, status=1/FAILURE
  - May 07 00:15:21 systemd[1]: borg.service: Failed with result 'exit-code'.
  - May 07 00:15:21 systemd[1]: Failed to start Run backup borg.
  - May 07 00:15:21 systemd[1]: borg.service: Consumed 4min 49.470s CPU time.
# yunohost service status borg
configuration: unknown
description: Deduplicating backup program
last_state_change: 2024-05-07 00:15:21
start_on_boot: static
status: failed
# systemctl status borg
● borg.service - Run backup borg
     Loaded: loaded (/etc/systemd/system/borg.service; static)
     Active: failed (Result: exit-code) since Tue 2024-05-07 00:15:21 UTC; 12h ago
TriggeredBy: ● borg.timer
    Process: 455713 ExecStart=/usr/bin/sudo /usr/local/bin/backup-with-borg borg (code=exited, status=1/FAILURE)
   Main PID: 455713 (code=exited, status=1/FAILURE)
        CPU: 4min 49.470s

May 07 00:15:17 artanux.be sudo[467117]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
May 07 00:15:18 artanux.be sudo[467117]: pam_unix(sudo:session): session closed for user root
May 07 00:15:18 artanux.be sudo[467126]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost app setting borg state -v failed
May 07 00:15:18 artanux.be sudo[467126]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
May 07 00:15:19 artanux.be sudo[467126]: pam_unix(sudo:session): session closed for user root
May 07 00:15:20 artanux.be sudo[455713]: pam_unix(sudo:session): session closed for user root
May 07 00:15:21 artanux.be systemd[1]: borg.service: Main process exited, code=exited, status=1/FAILURE
May 07 00:15:21 artanux.be systemd[1]: borg.service: Failed with result 'exit-code'.
May 07 00:15:21 artanux.be systemd[1]: Failed to start Run backup borg.
May 07 00:15:21 artanux.be systemd[1]: borg.service: Consumed 4min 49.470s CPU time.
# cat /var/log/borg/240507_0000.log | grep -v BASH | uniq
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 2.8MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000019-backup_create'
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 114.3MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000057-backup_create'
Collecte des fichiers devant être sauvegardés pour borg…
Loading installation settings...
Declaring files to be backed up...
Backup script completed for borg. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 128.0KB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000136-backup_create'
Collecte des fichiers devant être sauvegardés pour borgserver…
Declaring files to be backed up...
Borg backup repo in /home/quercus/ won't be backup to avoid backup of backup loop issue.
Backup script completed for borgserver. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 59.3KB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000202-backup_create'
Collecte des fichiers devant être sauvegardés pour dokuwiki__2…
Declaring files to be backed up...
Backup script completed for dokuwiki__2. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 34.0MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000225-backup_create'
Collecte des fichiers devant être sauvegardés pour element…
Declaring files to be backed up...
Backup script completed for element. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 58.6MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000251-backup_create'
Collecte des fichiers devant être sauvegardés pour freshrss…
Declaring files to be backed up...
Backing up the MySQL database...
Backup script completed for freshrss. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 156.8MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000314-backup_create'
Collecte des fichiers devant être sauvegardés pour gitea…
Declaring files to be backed up...
Backing up the MySQL database
Backup script completed for gitea. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 401.7MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000345-backup_create'
Collecte des fichiers devant être sauvegardés pour nextcloud…
Declaring files to be backed up...
Backing up the MySQL database...
Backup script completed for nextcloud. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 632.4GB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-000423-backup_create'
Collecte des fichiers devant être sauvegardés pour rainloop…
Loading installation settings...
Declaring files to be backed up...
Backing up the MySQL database...
Backup script completed for rainloop. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 103.3MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-001230-backup_create'
Collecte des fichiers devant être sauvegardés pour redirect…
Backup script completed for redirect. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 49.7KB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-001300-backup_create'
Collecte des fichiers devant être sauvegardés pour synapse…
Declaring files to be backed up...
Backup script completed for synapse. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 2.1GB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-001322-backup_create'
Collecte des fichiers devant être sauvegardés pour vaultwarden…
Declaring files to be backed up...
Backup script completed for vaultwarden. (YunoHost will then actually copy those files to the archive).
Création d'une archive de sauvegarde à partir des fichiers collectés…
L'archive contiendra environ 92.0MB de données.
L'opération 'Créer une archive de sauvegarde' a échoué ! Pour obtenir de l'aide, merci de partager le journal de l'opération en utilisant la commande 'yunohost log share 20240507-001449-backup_create'
# cat 240507_0000.err | grep -v BASH | uniq 
Failed to format translated string 'backup_applying_method_custom': 'Appel de la méthode de sauvegarde personnalisée '{method}'…' with arguments '()' and '{}, raising error: KeyError('method') (don't panic this is just a warning)
Failed to format translatable string 'backup_applying_method_custom': 'Calling the custom backup method '{method}'…' with arguments '()' and '{}', raising  error: KeyError('method') (don't panic this is just a warning)
A repository already exists at ssh://USER@SERVERB.be/~/backup.
Échec de l'exécution du script : /etc/yunohost/hooks.d/backup_method/05-borg_app
Échec de la méthode de sauvegarde personnalisée à l'étape 'backup'
Failed to format translated string 'backup_applying_method_custom': 'Appel de la méthode de sauvegarde personnalisée '{method}'…' with arguments '()' and '{}, raising error: KeyError('method') (don't panic this is just a warning)
Failed to format translatable string 'backup_applying_method_custom': 'Calling the custom backup method '{method}'…' with arguments '()' and '{}', raising  error: KeyError('method') (don't panic this is just a warning)
A repository already exists at ssh://USER@SERVERB.be/~/backup.
Échec de l'exécution du script : /etc/yunohost/hooks.d/backup_method/05-borg_app
Échec de la méthode de sauvegarde personnalisée à l'étape 'backup'
Failed to format translated string 'backup_applying_method_custom': 'Appel de la méthode de sauvegarde personnalisée '{method}'…' with arguments '()' and '{}, raising error: KeyError('method') (don't panic this is just a warning)
Failed to format translatable string 'backup_applying_method_custom': 'Calling the custom backup method '{method}'…' with arguments '()' and '{}', raising  error: KeyError('method') (don't panic this is just a warning)
A repository already exists at ssh://USER@SERVERB.be/~/backup.
Échec de l'exécution du script : /etc/yunohost/hooks.d/backup_method/05-borg_app
Échec de la méthode de sauvegarde personnalisée à l'étape 'backup'
(...une série de logs similaires...)

Je trouve aussi cette erreur avec cette commande :

# yunohost log share 20240507-000423-backup_create
(...)
2024-05-07 00:12:24,482: DEBUG - [2024-05-07_00:12:17] Failed to create/acquire the lock /root/.cache/borg/5fb1b23d9c9a4a577d512e48fceab0033bfb7508d7e6759ee6aadffb3d220af2/lock.exclusive (timeout).

Toujours sur le serveur A, si je regarde les backups que le serveur B a envoyé :

root@serveurA# borg list /home/USERB/backup/
(...)
_auto_redirect__3-2024-05-07_00:13   Tue, 2024-05-07 00:13:29 [ba34ec8e939a6eb8db8f6c0c62fc9ba80ac74a5388b291ff5226e2c52a3c8315]
_auto_shaarli-2024-05-07_00:14       Tue, 2024-05-07 00:14:49 [f6c5da0b34216c929b17cabdf652da2514b6828c2fd51b62c768e3efb7ee6500]
_auto_wordpress-2024-05-07_00:20     Tue, 2024-05-07 00:20:14 [e8e69b710cbac69e9c1cbe64a2e03ed27a937d4015fa36498116a07f87e67198]

J’ai bien des backups aujourd’hui.

Maintenant, si je regarde sur le serveur B :

# borg list /home/USERA/backup/
(...)
_auto_synapse-2024-04-28_00:43       Sun, 2024-04-28 00:43:39 [a51c68e1e8145a612d518d3834ed2adc1e4b338726fc08512f5f3d205baf05b7]
_auto_vaultwarden-2024-04-28_00:45   Sun, 2024-04-28 00:45:59 [c483db766e93abd60f96e288e4343568a207b19c52f84a878e853cd65a1681e5]
_auto_dokuwiki__2-2024-04-28_15:32   Sun, 2024-04-28 15:32:49 [e98e232e7c1533af36dcd5c3e59e1a57c6bba89dcdfa8a0eb3c66bf32f1cd764]

Ça fait une bonne semaine qu’il n’y a plus eu de backups.

J’ai tenté un redémarrage du service :

# systemctl restart borg
Job for borg.service failed because the control process exited with error code.
See "systemctl status borg.service" and "journalctl -xe" for details.
# systemctl status --lines 100 borg 
● borg.service - Run backup borg
     Loaded: loaded (/etc/systemd/system/borg.service; static)
     Active: failed (Result: exit-code) since Tue 2024-05-07 13:55:27 UTC; 30min ago
TriggeredBy: ● borg.timer
    Process: 491788 ExecStart=/usr/bin/sudo /usr/local/bin/backup-with-borg borg (code=exited, status=1/FAILURE)
   Main PID: 491788 (code=exited, status=1/FAILURE)
        CPU: 4min 42.643s
(...)
May 07 13:55:24 artanux.be sudo[501846]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/yunohost app setting borg state -v failed
May 07 13:55:24 artanux.be sudo[501846]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
May 07 13:55:25 artanux.be sudo[501846]: pam_unix(sudo:session): session closed for user root
May 07 13:55:26 artanux.be sudo[491788]: pam_unix(sudo:session): session closed for user root
May 07 13:55:27 artanux.be systemd[1]: borg.service: Main process exited, code=exited, status=1/FAILURE
May 07 13:55:27 artanux.be systemd[1]: borg.service: Failed with result 'exit-code'.
May 07 13:55:27 artanux.be systemd[1]: Failed to start Run backup borg.
May 07 13:55:27 artanux.be systemd[1]: borg.service: Consumed 4min 42.643s CPU time.

Je commence à coincer…

La seule ligne de log qui me semble particulièrement “effrayante”, c’est celle-ci :

A repository already exists at ssh://USER@SERVERB.be/~/backup.

En meme temps, c’est normal qu’il y ait déjà un repository. Mais ça a l’air de coincer à cause de ça ? Quelqu’un aurait une idée ?

Je continue à essayer de comprendre ce qui coince.

J’ai tenté de lancer un backup pour une seule app :

# yunohost backup create -n auto_vaultwarden --method borg_app --apps vaultwarden
Info: Collecting files to be backed up for vaultwarden…
Info: Declaring files to be backed up...
Info: Backup script completed for vaultwarden. (YunoHost will then actually copy those files to the archive).
Info: Creating a backup archive from the collected files…
Info: The archive will contain about 92.1MB of data.
Warning: Failed to format translated string 'backup_applying_method_custom': 'Calling the custom backup method '{method}'…' with arguments '()' and '{}, raising error: KeyError('method') (don't panic this is just a warning)
Warning: Failed to format translatable string 'backup_applying_method_custom': 'Calling the custom backup method '{method}'…' with arguments '()' and '{}', raising  error: KeyError('method') (don't panic this is just a warning)
Warning: A repository already exists at ssh://USERA@SERVERB.be/~/backup.
Error: Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
Info: The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20240509-055111-backup_create' to get help
Error: Custom backup method could not get past the 'backup' step

On retrouve bien toute une série de fichier dans /root/.cache/ :

# ls -al /root/.cache/borg/5fb1b23d9c9a4a577d512e48fceab0033bfb7508d7e6759ee6aadffb3d220af2/
total 105960
drwx------ 4 root root     4096 May  9 05:51 .
drwx------ 5 root root     4096 Aug 16  2020 ..
-rw------- 1 root root 56668366 Apr 28 15:34 chunks
drwx------ 2 root root     4096 Aug 13  2020 chunks.archive.d
-rw------- 1 root root      595 Apr 28 15:34 config
-rw------- 1 root root 51792435 Apr 28 15:33 files
drwx------ 2 root root     4096 Apr 28 15:34 lock.exclusive
-rw------- 1 root root       58 Apr 28 15:34 lock.roster
-rw------- 1 root root        2 Apr 28 15:34 pre12-meta
-rw------- 1 root root       68 Aug 13  2020 README

En vérifiant les logs :

# yunohost log share 20240509-055111-backup_create

Je retrouve ce problème de lock :

2024-05-09 05:51:22,334: DEBUG - + borg init -e repokey ssh://USERA@SERVERB.be/~/backup
2024-05-09 05:51:28,788: WARNING - A repository already exists at ssh://USERA@SERVERB.be/~/backup.
2024-05-09 05:51:28,915: DEBUG - + set -e
2024-05-09 05:51:28,917: DEBUG - + log_with_timestamp
2024-05-09 05:51:28,918: DEBUG - + borg create ssh://USERA@SERVERB.be/~/backup::_auto_vaultwarden-2024-05-09_05:51 ./
2024-05-09 05:51:28,920: DEBUG - + tee -a /var/log/backup_borg.err
2024-05-09 05:51:28,921: DEBUG - ++ date +%Y-%m-%d_%H:%M:%S
2024-05-09 05:51:28,924: DEBUG - + sed -e 's/^/[2024-05-09_05:51:28] /'
2024-05-09 05:51:35,398: DEBUG - [2024-05-09_05:51:28] Failed to create/acquire the lock /root/.cache/borg/5fb1b23d9c9a4a577d512e48fceab0033bfb7508d7e6759ee6aadffb3d220af2/lock.exclusive (timeout).
2024-05-09 05:51:36,403: ERROR - Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app

On retrouve également ce problème dans /var/log/backup_borg.err :

# cat /var/log/backup_borg.err | tail -n 100
[2024-05-10_00:14:08] Failed to create/acquire the lock /root/.cache/borg/5fb1b23d9c9a4a577d512e48fceab0033bfb7508d7e6759ee6aadffb3d220af2/lock.exclusive (timeout).
[2024-05-11_00:00:38] Failed to create/acquire the lock /root/.cache/borg/5fb1b23d9c9a4a577d512e48fceab0033bfb7508d7e6759ee6aadffb3d220af2/lock.exclusive (timeout).

J’ai trouvé une commande pour récupérer le lock :

# borg break-lock

(documentation : borg break-lock)

Mais je ne parviens manifestement pas à retirer ce lock. J’ai essayé depuis le serveur A :

# borg break-lock ssh://USERA@SERVERB.be:PORT/~/backup

Mais la commande me demande un mot de passe pour l’utilisateur “USERA” alors que je fais tous via des clés SSH. J’ai un mot de passe mais l’authentification par mot de passe est bloquée sur le serveur (ce qui est normal et me convient…).

Je rencontre une erreur très similaire avec les mêmes logs KeyError('method').
Néanmoins c’est ma première tentative de configuration d’un système de backup autour de Borg, donc je ne peux pas vraiment aider…
Je vais tenter de mettre à jour borg sur la branche testing, déjà

app=borg; BORG_PASSPHRASE="$(yunohost app setting $app passphrase)" BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -oStrictHostKeyChecking=yes " borg break-lock ssh://USERA@SERVERB.be:PORT/~/backup

En essayant comme ceci pour utiliser la clé ?

Merci @ljf , je ne trouvais pas quelle syntaxe utiliser.

# app=borg; BORG_PASSPHRASE="$(yunohost app setting $app passphrase)" BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -p PORT -oStrictHostKeyChecking=yes " borg break-lock ssh://USERA@SERVERB.be/~/backup
(la commande n'a rien retourné)

J’ai ensuite relancé un backup :

# yunohost backup create -n auto_vaultwarden --method borg
(la commande est en cours, ça prend du temps et ça semble passer...)

J’édite quand j’ai un résultat.

J’ai des backups qui sont passés du serveur A vers le serveur B.

root@serverB:/# borg list /home/userA/backup/
(...)
_auto_rainloop-2024-05-14_00:38      Tue, 2024-05-14 00:39:08 [e3714a8d4b77b126d6ebc0ae2988ac6af2bb909e863a0a13c64944918fa05c86]
(...)

Par contre le service était à l’arrêt hier soir. J’ai essayé de le relancer via la webadmin mais j’ai finalement eu un timeout (normal vu le temps que prennent les backups…) et du coup, je pense que ça a remis un lock car je n’ai pas eu de backup cette nuit. J’aurais peut-être simplement du attendre qu’il soit relancé automatiquement cette nuit.

Ce matin, j’ai donc à nouveau fait un “borg break-lock”. Je vais attendre demain pour voir si les choses sont rentrées dans l’ordre.