4 points par GN⁺ 2024-10-02 | 1 commentaires | Partager sur WhatsApp
  • La bêta 2.0.0b11 est réservée aux tests de nouveaux dépôts et ne doit pas être utilisée en production
  • Borg 2.0 est une breaking release incompatible avec les dépôts existants ; pour déplacer les archives d’un dépôt borg 1.2/1.4 vers un nouveau dépôt borg 2.0, il faut utiliser borg transfer
  • Avant d’utiliser borg transfer, effectuer la mise à niveau vers borg >= 1.2.6 ou vers une version de borg incluant le correctif de CVE-2023-36811, puis suivre les instructions de mise à niveau liées au manifest et au TAM des archives
  • Ajout de la prise en charge des URL rclone:// pour les dépôts Borg, permettant d’utiliser Amazon S3, Backblaze B2, Ceph, Dropbox, Google Cloud Storage, Google Drive, Microsoft Azure, Microsoft OneDrive, OpenStack Swift, sftp, SMB/CIFS, WebDAV, ainsi que plus de 70 produits de stockage cloud
  • Prise en charge des opérations parallèles sur un même dépôt depuis un même client
  • Ajout de la fonctionnalité Archive series : NAME identifie la série d’archives portant le même nom, et une archive individuelle précise est identifiée par aid:<archive hash>
  • La modification de la syntaxe en ligne de commande impose d’adapter les scripts et wrappers : le dépôt se spécifie généralement via BORG_REPO ou borg -r <MYREPO> <COMMAND>, le format repo::archive n’étant plus utilisé
  • Suppression de la syntaxe de dépôt de style scp, utilisation requise des URL ssh://
  • Certaines commandes mixtes dépôt/archive ont été séparées ou renommées : borg init devient borg repo-create, les opérations sur dépôt utilisent borg repo-*, et les opérations sur archive utilisent borg create NAME, borg list ID, borg extract ID, etc.
  • --glob-archives est renommé en --match-archives, avec prise en charge des styles de motif id:, sh:, re: ; la valeur par défaut est id:, qui correspond à une comparaison sur chaîne identique
  • Avec platformdirs 3.x.x, XDG_*_HOME n’est plus appliqué sur macOS et Windows ; sur macOS, les répertoires config/cache par défaut deviennent ~/Library/Application Support/borg/
  • Suppression de --remote-ratelimit, --numeric-owner, --nobsdflags, --noatime, --save-space, --bypass-lock, ainsi que de borg config
  • L’utilisation simultanée de --list et --progress est interdite, sauf exception pour --log-json
  • Amélioration des performances de borg check et compact sur les dépôts à forte latence grâce à la suppression des appels inutiles à repository.list(), et amélioration des performances de la plupart des commandes sur ces dépôts par rapport à b10 grâce à un cache d’index des chunks dans le dépôt
  • Correction d’une rare race condition dans le cache de fichiers pouvant entraîner une perte de données
  • Les entrées du cache de fichiers conservent désormais à la fois ctime et mtime, et il est possible de reconstruire le cache de fichiers à partir de l’archive précédente de la même archive series
  • Le cache de fichiers est séparé par archive series afin de réduire l’utilisation de la RAM
  • Il est désormais interdit de spécifier plusieurs fois certaines options redondantes et sans effet, ce qui peut faire échouer des scripts qui fonctionnaient auparavant

1 commentaires

 
GN⁺ 2024-10-02
Avis de Hacker News
  • J’utilise BorgBackup et j’en suis plutôt satisfait
    Une fois configuré, on peut presque l’oublier, et 7 ans plus tard mes sauvegardes avec déduplication tournent toujours chaque semaine sans problème
    Je recommande de l’utiliser avec borgmatic, qui réduit la complexité des sauvegardes Borg internes : https://github.com/borgmatic-collective/borgmatic

    • Si vous utilisez un environnement de bureau et préférez une GUI, Vorta convenait bien aussi
      https://vorta.borgbase.com/
    • Ce genre d’outil, une fois appris et configuré, on finit vraiment par l’oublier, puis plus tard c’est pénible de s’en souvenir à nouveau, ce qui pousse à éviter la vérification des sauvegardes
      Du coup, je penche de plus en plus vers rsync ou des outils avec frontend GUI
    • Si le « configurer et l’oublier » dure depuis 7 ans, j’espère que vous faites quand même de temps en temps une vérification de restauration des sauvegardes
    • Je me demande s’il existe un bon client Android
  • Pour l’instant, je sauvegarde simplement vers ma machine distante avec rclone, mais ce n’est clairement pas une solution professionnelle
    J’ai pensé à ajouter Backblaze B2 comme destination distante, mais utiliser seulement rclone ne me semble pas vraiment être une approche de sauvegarde moderne
    rclone n’est pas, à proprement parler, un outil de sauvegarde, et même s’il propose du chiffrement, c’est assez rudimentaire
    À mon avis, un vrai outil de sauvegarde devrait découper les données en blocs de taille appropriée, préserver les liens si nécessaire en regroupant les répertoires en tar plutôt que de créer des fichiers tels quels pour coller aux API S3/B2, et gérer des bonnes pratiques établies depuis longtemps comme la déduplication
    Je me demande s’il existe un outil à recommander
    J’ai jeté un rapide coup d’œil à restic et duplicati, mais ce n’était pas aussi simple que je l’attendrais d’un outil de sauvegarde dédié
    Je n’ai pas besoin d’une GUI, et je n’en veux même pas ; idéalement toute la configuration serait dans un seul fichier de config, sauvegardable ailleurs comme n’importe quelle autre donnée et reproductible sur une nouvelle machine
    Le plus gros problème, c’est que j’ai vu des histoires effrayantes où ce genre d’outil a corrompu son index, rendant les données irrécupérables ; pour un outil de sauvegarde, c’est une zone critique où cela ne devrait absolument jamais arriver, et j’ai du mal à l’accepter

    • Si vous voulez traiter la configuration comme un fichier unique, kopia vaut le détour
      Il joue le même rôle que restic, mais sa manière de gérer la configuration pourrait davantage vous convenir
      Référence supplémentaire : https://news.ycombinator.com/item?id=34154052
      Mieux vaut ne pas essayer duplicati
      J’ai tenté plusieurs fois de l’utiliser sérieusement, mais il était toujours rempli de bugs bloquants, ce qui est d’autant plus dommage que j’aimais son interface
    • Depuis que j’ai essayé de faire des sauvegardes sur un rpi et que j’ai trouvé Borg trop lent pour être utilisable, j’utilise bupstash
      Depuis, j’ai mis à niveau mon serveur maison vers du matériel correct, mais bupstash fonctionne globalement mieux, donc je l’ai gardé
      Il faut toutefois tenir compte du fait que la dernière release date d’il y a 2 ans et que l’auteur le marque encore comme bêta
      Cela dit, les critères de qualité de l’auteur semblent plus élevés que ceux d’autres projets « non bêta »
      Comparatif utile d’outils de sauvegarde : https://github.com/deajan/backup-bench
    • Le caractère simple dépend du cas d’usage, mais borg a été excellent
      Je recommande de suivre le guide de démarrage rapide de la documentation
      Il prend en charge la déduplication et le chiffrement, et offre beaucoup plus de fonctionnalités, mais vous n’êtes pas obligé de les utiliser si vous n’en avez pas besoin
      Je l’utilise avec borgmatic pour mettre en place des procédures de sauvegarde et de reprise après sinistre qui réduisent le risque de perte de données
      borgbase est aussi un bon service, mais si vous n’avez pas besoin de ses fonctionnalités additionnelles, utiliser la prise en charge de rclone pour aller vers B2 ou équivalent peut revenir moins cher
      Je l’utilise depuis assez longtemps, à la fois pour des projets personnels et du travail rémunéré, et mon expérience a été bonne
    • J’utilise la combinaison restic + autorestic/resticprofile
      Borg 2 est encore en bêta et Kopia est dans une situation similaire
      Kopia est un outil plus récent, donc je le teste sur la même machine pour une sauvegarde redondante séparée ; comme j’ai de l’espace, il n’y a pas vraiment de raison de ne pas le faire
      Je lance de temps en temps un contrôle d’intégrité, données incluses, pour pouvoir faire confiance à l’état des métadonnées et des données
    • Je suis très satisfait de mes sauvegardes vers BackBlaze B2 avec Restic
      Le « fichier de config » est en réalité un script shell qui définit l’environnement, comme l’emplacement du dépôt, exécute les sauvegardes voulues, puis lance la commande prune conforme à la politique de rétention
      J’utilise cette configuration avec succès depuis plusieurs années
      Je n’ai jamais fait de restauration complète, mais la restauration de fichiers et de répertoires individuels n’a posé aucun problème
      Je me demande s’il existe un lien concernant les problèmes de corruption d’index
      Je ne l’ai jamais vécu directement, mais un seul échantillon n’a évidemment pas grande valeur
  • Je voulais depuis longtemps créer un backend rclone pour Borg
    Mais dans la v1, l’abstraction des backends n’était pas assez bonne pour le faire facilement
    Dans la v2, Thomas Waldmann a créé une interface abstraite correcte, et le code rclone fait moins de 300 lignes de Python, donc cela a pu se faire en un ou deux après-midi
    https://github.com/borgbackup/borgstore/blob/master/src/borg...

  • Très intéressant
    C’était une fonctionnalité demandée depuis longtemps, surtout avec la popularité croissante du stockage objet et la baisse de ses coûts
    Le fonctionnement de Borg avec du stockage objet n’était pas officiellement pris en charge, mais certains l’utilisaient ainsi
    D’après ce que je comprends, la plupart répliquaient le dépôt puis l’uploadaient, plutôt que de laisser Borg l’utiliser ou le manipuler directement ; le problème est que si le dépôt source était endommagé, ces dommages pouvaient être répliqués aussi
    Cette prise en charge devrait rendre les choses beaucoup plus faciles et simplifier le workflow
    Choisir la prise en charge de rclone plutôt qu’un service particulier semble être une décision plus intelligente et plus tournée vers l’avenir

  • Articles liés
    Borg 2.0 beta (deduplicating backup program with compression and encryption) - https://news.ycombinator.com/item?id=40990425 - juillet 2024
    Borgctl – borgbackup without bash scripts - https://news.ycombinator.com/item?id=39289656 - février 2024
    BorgBackup: Deduplicating archiver with compression and encryption - https://news.ycombinator.com/item?id=34152369 - décembre 2022
    Emborg – Front-End to Borg Backup - https://news.ycombinator.com/item?id=30035308 - janvier 2022
    Deduplicating Archiver with Compression and Encryption - https://news.ycombinator.com/item?id=27939412 - juillet 2021
    BorgBackup: Deduplicating Archiver - https://news.ycombinator.com/item?id=21642364 - novembre 2019
    Borg – Deduplicated backup with compression and authenticated encryption - https://news.ycombinator.com/item?id=13149759 - décembre 2016
    BorgBackup (short: Borg) is a deduplicating backup program - https://news.ycombinator.com/item?id=11192209 - février 2016

  • Je me demande s’il existe une comparaison récente entre Borg et Restic, ou une raison convaincante de passer de Restic à Borg
    J’utilisais Borg autrefois, mais le fait de ne pas pouvoir utiliser de backend autre que des fichiers locaux ou ssh posait problème
    Je suis passé à Restic à peu près au moment où Restic a commencé à prendre en charge la compression
    Pour mon cas d’usage, qui consiste à sauvegarder plusieurs serveurs vers un fournisseur de stockage compatible S3, Restic et Borg semblent désormais presque équivalents
    Je n’ai pas envie de réparer ce qui n’est pas cassé, mais j’aimerais aussi savoir ce que je rate avec Restic par rapport à Borg

    • Je préfère restic, car il est plus facile à comprendre et à utiliser
      C’est ce qui fait que les sauvegardes ont effectivement lieu
      Il me donne aussi moins l’impression de changer en permanence, et je n’ai jamais souhaité un flux continu de nouvelles fonctionnalités dans une solution de sauvegarde
  • Si vous cherchez un stockage de sauvegarde en ligne bon marché, il est bon de savoir que l’abonnement Microsoft 365 Single inclut 1 To sur OneDrive
    L’abonnement Family offre 1 To par personne
    Je l’utilise avec succès depuis plusieurs années avec restic + rclone
    Ce n’est pas rapide, mais ça fonctionne

    • L’offre storage box de Hetzner mérite aussi le détour
      1 To de stockage accessible en SSH pour 4 euros par mois, difficile à battre
  • Je me demande à partir de quel moment il faut recommander Borg plutôt qu’un simple rsync pour un usage personnel
    Pour l’instant, je sauvegarde avec rsync des ensembles de répertoires d’un disque vers un autre disque et vers un service distant (rsync.net)
    Ça fonctionne bien, mais mon cas d’usage est simple et je ne sais pas si cette solution suffit, ou si je passe à côté d’un gros avantage de Borg
    Le chiffrement de Borg me fait envie, mais la complexité d’un nouvel outil et la crainte de peut-être abîmer mes données me retiennent
    Les données à sauvegarder représentent actuellement environ 5 To, ce qui n’est pas énorme

    • Dans mon cas, la déduplication et la compression économisent énormément d’espace de stockage
      Pour les sauvegardes de mails, 17 sauvegardes des 6 derniers mois représentent à l’origine 837 Go, puis 312 Go après compression et 19 Go après déduplication
      Postgres passe aussi de 25 Go à 7 Go, puis à 900 Mo
      Les sauvegardes de mails pourraient aussi économiser de l’espace avec les liens physiques de rsync, mais je ne sais pas si elles descendraient à ce niveau sans réglages particuliers
    • Le problème courant, c’est que si vous supprimez ou endommagez un fichier et ne le découvrez que deux jours plus tard, une seule sauvegarde quotidienne ne sert à rien
      Avoir plusieurs snapshots est très important
      Des ressources comme http://www.taobackup.com/ valent aussi le détour
      rsync est très lent quand il y a beaucoup de fichiers, et ne sait pas non plus gérer les fichiers renommés, qu’il retransfère
    • Avec rsync, on ne réplique que le dernier état
      Avec Borg, on peut voir toutes les sauvegardes créées et revenir au moment voulu parmi les snapshots précédents
      C’est un avantage que l’on retrouve aussi dans beaucoup de solutions de sauvegarde
      Concrètement, si vous supprimez un fichier par erreur et que cet état est synchronisé par rsync, vous ne pouvez pas restaurer ce fichier depuis cette sauvegarde
      Avec Borg, c’est possible
  • Je me demande s’il y a une raison d’utiliser le chiffrement de Borg plutôt que rclone crypt, ou l’inverse

    1. https://borgbackup.readthedocs.io/en/2.0.0b11/quickstart.htm...
    2. https://rclone.org/crypt/
    • rclone crypt n’a pas grand-chose à voir avec Borg
      C’est un outil qui copie des fichiers d’une machine à une autre, et dans ce cas les chiffre avant la copie
      C’est plus proche de rsync utilisé avec le cloud
      Borg est un outil d’une autre nature, destiné aux sauvegardes
      Il déduplique, chiffre, crée des instantanés, calcule des sommes de contrôle et compresse un répertoire source dans un dépôt unique
      Il fonctionne au niveau des blocs de données, pas au niveau des fichiers
      Il inclut aussi des commandes de gestion du dépôt, permettant de rechercher des données, de nettoyer ou fusionner des instantanés, etc.
      Ensuite, on peut utiliser des outils comme rsync/SSH ou rclone pour transférer ou synchroniser le dépôt là où on le souhaite
      Maintenant que rclone est pris en charge nativement, il est possible de sauvegarder directement vers un site distant sans devoir conserver le dépôt à la fois en local et à distance
    • Je me demande aussi quelle est la différence entre ce paquet et Restic
      J’aimerais savoir en quoi ils diffèrent en termes d’efficacité et de chiffrement
    • Je me demande à quel point la déduplication fonctionne bien lorsque le chiffrement est activé
      J’ai regardé rsync.net, mais j’ai trouvé dommage qu’il ne prenne pas en charge une forme raisonnable de chiffrement
  • J’utilise Borg Backup avec rsync.net depuis plusieurs années et j’en suis satisfait
    Ils prennent en charge la possibilité de forcer Borg dans une session ssh via force-command, et Borg dispose d’une option empêchant la suppression même si la clé ssh de sauvegarde est compromise
    Dans l’ensemble, c’est une solution robuste sans être trop pénible à configurer

    • Je cherchais une solution pour empêcher un hôte compromis de supprimer ses propres sauvegardes
      Comme indiqué, c’est possible avec rsync.net en forçant la commande, et les instantanés de rsync.net servent aussi de protection contre une suppression accidentelle