Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
borgbackup [Le 27/08/2019, 21:16]
85.171.241.178 [Particularités principales]
borgbackup [Le 22/02/2023, 09:10] (Version actuelle)
L'Africain
Ligne 1: Ligne 1:
-{{tag>xenial ​sécurité sauvegarde}}+{{tag>Jammy sécurité sauvegarde}}
 ---- ----
    
Ligne 10: Ligne 10:
 Une fois compris le principe des sauvegardes de Borg, celui-ci est très simple d'​utilisation au quotidien, pas de base de données à gérer, les commandes sont simples et logiques et l'aide est très bien faite. Une fois compris le principe des sauvegardes de Borg, celui-ci est très simple d'​utilisation au quotidien, pas de base de données à gérer, les commandes sont simples et logiques et l'aide est très bien faite.
  
-Il possède ​une interface graphique en version alpha, [[https://​github.com/​borgbase/​vorta|Vorta]].+Pour ceux que la ligne de commande rebute, il est possible d'​installer ​une interface graphique en complémentCelle-ci est indépendante de Borg mais est pleinement fonctionnelle,​ même si elle n'​utilise pas toutes les fonctionnalités que l'on retrouve avec la ligne de commande
 ===== Particularités principales ===== ===== Particularités principales =====
   * __Optimisation de l'​espace disque__ : la déduplication,​ basée sur une segmentation du contenu, est utilisée pour réduire le nombre d'​octets stockés: chaque fichier est divisé en un certain nombre de morceaux de longueur variable et seuls les morceaux qui n'ont jamais été sauvegardés auparavant sont ajoutés au dépôt. Peu importe qu'ils viennent de machines différentes,​ de sauvegardes précédentes ou de la même sauvegarde. Il n'y aura aucun fichier en double dans ces sauvegardes,​ tout reposant sur les empreintes de chaque fichier sauvegardé. Tous les morceaux dans le même dépôt sont référencés,​ peu importe s’ils proviennent de différentes machines, à partir de sauvegardes précédentes,​ à partir de la même sauvegarde ou même à partir du même fichier unique.   * __Optimisation de l'​espace disque__ : la déduplication,​ basée sur une segmentation du contenu, est utilisée pour réduire le nombre d'​octets stockés: chaque fichier est divisé en un certain nombre de morceaux de longueur variable et seuls les morceaux qui n'ont jamais été sauvegardés auparavant sont ajoutés au dépôt. Peu importe qu'ils viennent de machines différentes,​ de sauvegardes précédentes ou de la même sauvegarde. Il n'y aura aucun fichier en double dans ces sauvegardes,​ tout reposant sur les empreintes de chaque fichier sauvegardé. Tous les morceaux dans le même dépôt sont référencés,​ peu importe s’ils proviennent de différentes machines, à partir de sauvegardes précédentes,​ à partir de la même sauvegarde ou même à partir du même fichier unique.
-  * __Vitesse__ : Le code critique (chunking, compression,​ chiffrement) est implémenté en C / Cython ​et Borg gère la mise en cache locale des fichiers / données d'​index des morceaux ainsi que la détection rapide des fichiers non modifiés. +  * __Vitesse__ : Le code critique (chunking, compression,​ chiffrement) est implémenté en C / Python ​et Borg gère la mise en cache locale des fichiers / données d'​index des morceaux ainsi que la détection rapide des fichiers non modifiés. 
-  * __Chiffrement des données__ :​ Toutes les données peuvent être protégées en utilisant ​le méthode de chiffrement AES 256-bit, l'​intégrité des données et l'​authenticité sont vérifiées en utilisant HMAC-SHA256. Les données sont chiffrées côté client. +  * __Chiffrement des données__ :​ Toutes les données peuvent être protégées en utilisant ​la méthode de chiffrement AES 256-bit, l'​intégrité des données et l'​authenticité sont vérifiées en utilisant HMAC-SHA256. Les données sont chiffrées côté client. 
-  * __Compression__ : Toutes les données peuvent être compressées au choix par LZ4 (super rapide, faible compression),​ zlib (vitesse ​moyenne ​et compression ​aussi) ou lzma (basse vitesse, compression élevée). À noter que plus la compression est forte, plus le processeur est sollicité.+  * __Compression__ : Toutes les données peuvent être compressées au choix par LZ4 (super rapide, faible compression),​ zlib (vitesse et compression ​moyenne) ou lzma (basse vitesse, compression élevée). À noter que plus la compression est forte, plus le processeur est sollicité.
   * __Sauvegardes hors site__ : Borg peut stocker des données sur un hôte distant accessible via SSH. Si Borg est installé sur l'​hôte distant, des gains importants de performance peuvent être atteints par rapport à un système de fichiers réseau (sshfs, nfs, ...).   * __Sauvegardes hors site__ : Borg peut stocker des données sur un hôte distant accessible via SSH. Si Borg est installé sur l'​hôte distant, des gains importants de performance peuvent être atteints par rapport à un système de fichiers réseau (sshfs, nfs, ...).
   * __Sauvegardes montables comme un simple système de fichier__ :  Les archives de sauvegarde peuvent être montées comme des systèmes de fichiers dans l'​espace utilisateur pour un examen interactif, rapide et faciles des sauvegardes,​ la restauration se faisant alors par une simple copie de fichier.   * __Sauvegardes montables comme un simple système de fichier__ :  Les archives de sauvegarde peuvent être montées comme des systèmes de fichiers dans l'​espace utilisateur pour un examen interactif, rapide et faciles des sauvegardes,​ la restauration se faisant alors par une simple copie de fichier.
- 
-===== Pré-requis ===== 
-  
-  * Disposer des [[:​sudo|droits d'​administration]]. 
-  * Disposer d'une connexion à Internet configurée et activée. 
    
 ===== Installation ===== ===== Installation =====
    
 Il suffit juste d'​installer les paquets **[[apt>​borgbackup]]** et **[[apt>​borgbackup-doc]]**,​ ceux-ci ​ installant automatiquement les dépendances nécessaires. Il suffit juste d'​installer les paquets **[[apt>​borgbackup]]** et **[[apt>​borgbackup-doc]]**,​ ceux-ci ​ installant automatiquement les dépendances nécessaires.
 +
 +==== Installation d'une interface graphique ====
 +=== Vorta ===
 +Pour installer l'​interface graphique (Vorta), il faut installer le paquet **[[apt>​vorta]]**,​ celui-ci installant aussi automatiquement les dépendances nécessaires (les paquets sont disponibles pour Ubuntu ≥21.04 [Hirsute]).
 +=== Autres interfaces graphiques ===
 +  * __Pika Backup__ : GTK desktop client pour Linux [[https://​gitlab.gnome.org/​World/​pika-backup|Pika Backup sur Gitlab]].
 +  * __Borg Web__ : web-based user interface [[https://​borgweb.readthedocs.io/​en/​stable/​|Borg Web]].
 +  * __Cyborg Backup__ : web-based user interface [[https://​github.com/​cyborgbackup/​cyborgbackup|CyborgBackup sur Github]].
 +  * __Borg Hive__ : web-based user interface [[https://​github.com/​bpereto/​borg-hive|Borg Hive sur Github]].
    
 ===== Utilisation ===== ===== Utilisation =====
- +==== Utilisation de l'​interface graphique Vorta :==== 
 +L'​utilisation de celle-ci simplifie les tâches de Borg, mais il est quand même nécessaire de bien avoir compris les principes de base de Borg (dépots, archives, etc.). Une fois assimilé ces bases, l'​utilisation de cette dernière est plutôt intuitive. 
 +==== Utilisation en ligne de commande :====
 Toutes les commandes se lanceront via le [[:​terminal]] :\\ Toutes les commandes se lanceront via le [[:​terminal]] :\\
-De nombreuses options sont disponibles pour chaque commande, aussi n'​hésitez pas à consulter la [[http://​borgbackup.readthedocs.io/​en/​stable/​usage.html|documentation de Borg Backup]] afin d'​avoir toutes les possibilités permises pour chaque commande.+De nombreuses options sont disponibles pour chaque commande, aussi n'​hésitez pas à consulter la [[https://​borgbackup.readthedocs.io/​en/​stable/​usage.html|documentation de Borg Backup]] afin d'​avoir toutes les possibilités permises pour chaque commande.
  
   * **Création d'un dépôt pour gérer les sauvegardes :**   * **Création d'un dépôt pour gérer les sauvegardes :**
-<​code>​borg init /​path-to-repo</​code>​+<​code>​borg init -e none /​path-to-repo</​code> ​"-e none" signifie pas de chiffrement de la sauvegarde. Si vous souhaitez chiffrer celle-ci, la documentation explique toutes les options disponibles.
  
   * **Sauvegarde des répertoires ~/src et ~/Documents dans une archive appelée Lundi** :   * **Sauvegarde des répertoires ~/src et ~/Documents dans une archive appelée Lundi** :
Ligne 41: Ligne 47:
   * **Le lendemain, créez une nouvelle archive appelée Mardi :**   * **Le lendemain, créez une nouvelle archive appelée Mardi :**
 <​code>​borg create -v --stats /​path-to-repo::​Mardi ~/src ~/​Documents</​code>​ <​code>​borg create -v --stats /​path-to-repo::​Mardi ~/src ~/​Documents</​code>​
-Cette sauvegarde sera beaucoup plus rapide et beaucoup plus petite puisque seules les nouvelles données jamais ​vus auparavant sont stockées. L'​option --stats demande à  Borg les statistiques de sortie sur l'​archive nouvellement créée, comme la quantité de données uniques (non partagé avec d'​autres archives)+Cette sauvegarde sera beaucoup plus rapide et beaucoup plus petite puisque seules les nouvelles données jamais ​vues auparavant sont stockées. L'​option --stats demande à  Borg les statistiques de sortie sur l'​archive nouvellement créée, comme la quantité de données uniques (non partagé avec d'​autres archives)
  
   * **Affiche la liste de toutes les archives dans le dépôt :**   * **Affiche la liste de toutes les archives dans le dépôt :**
Ligne 71: Ligne 77:
 Cette commande est normalement utilisée par les scripts de sauvegarde automatisés qui souhaitent garder un certain nombre de sauvegardes historiques. Cette commande est normalement utilisée par les scripts de sauvegarde automatisés qui souhaitent garder un certain nombre de sauvegardes historiques.
  
-Garder les 7 dernières archives journalières ainsi que 4 sauvegardes additionnelles de fin de semaine ​+Garder les 7 dernières archives journalières ainsi que 4 sauvegardes additionnelles de fin de semaine
 <​code>​borg prune --keep-daily=7 --keep-weekly=4 /​path-to-repo</​code>​ <​code>​borg prune --keep-daily=7 --keep-weekly=4 /​path-to-repo</​code>​
  
Ligne 77: Ligne 83:
 <​code>​borg prune --keep-daily=7 --keep-weekly=4 --keep-monthly=-1 /​path-to-repo</​code>​ <​code>​borg prune --keep-daily=7 --keep-weekly=4 --keep-monthly=-1 /​path-to-repo</​code>​
  
-Garder toutes les sauvegardes des 10 derniers jours, 4 sauvegardes ​additionelles ​ de fin de semaine et toutes les sauvegardes mensuelles+Garder toutes les sauvegardes des 10 derniers jours, 4 sauvegardes ​additionnelles ​ de fin de semaine et toutes les sauvegardes mensuelles
 <​code>​borg prune --keep-within=10d --keep-weekly=4 --keep-monthly=-1 /​path-to-repo</​code>​ <​code>​borg prune --keep-within=10d --keep-weekly=4 --keep-monthly=-1 /​path-to-repo</​code>​
  
Ligne 88: Ligne 94:
 ===== Astuces ===== ===== Astuces =====
 Il est facile d'​intégrer Borg dans un script bash en créant une archive par jour : Il est facile d'​intégrer Borg dans un script bash en créant une archive par jour :
-<​code>​borg create /​path-to-repo::​`date +%Y%m%d~/src ~/​Documents</​code>​+<​code>​borg create /​path-to-repo::​{now:%Y%m%d~/src ~/​Documents</​code>​
 Ainsi il sera créé chaque jour une sauvegarde différente dont le nom sera sous la forme aaaammjj Ainsi il sera créé chaque jour une sauvegarde différente dont le nom sera sous la forme aaaammjj
 +
 +===== Problèmes connus =====
 +==== Erreur "​OSError:​ [Errno 28] No space left on device"​ :====
 +Dans le cas d'une sauvegarde de taille conséquente,​ il se peut que Borg plante avec l'​erreur ci-dessus bien que l'​espace disque où est effectué la sauvegarde soit suffisant.
 +En effet, Borg utilise un espace temporaire pour effectuer la sauvegarde et celui-ci est situé par défaut dans "​~/​.cache/​borg"​. Si l'​espace disque de la partition home est insuffisant pour absorber celui-ci, la sauvegarde n'​aboutira pas. Pour contourner cette erreur, il est possible de forcer Borg à utiliser le fichier cache sur une autre partition.
 +Pour ce faire, il suffit de placer en tête du script de sauvegarde l'​instruction suivante :
 +export BORG_CACHE_DIR=/​mynewpath/​cache
 +==== Erreur "​Failed to create/​acquire the lock [REPOSITORY]/​lock.exclusive"​ :====
 +S'​assurer qu'​aucune sauvegarde Borg est active, puis utiliser la commande "borg break-lock [REPOSITORY] qui devrait résoudre le problème (elle est prévue pour ça...)
 +==== Erreur "​Failed to create/​acquire the lock borg/​cache/​xxxxxxxxxxxxx"​ :====
 +S'​assurer qu'​aucune sauvegarde Borg est active, puis supprimer le fichier "​xxxxxxxxxxxxx"​ répertorié ci-dessus. La prochaine sauvegarde durera un peu plus longtemps, le temps que Borg recréé les fichiers nécessaires.
  
 ===== Désinstallation ===== ===== Désinstallation =====
  • borgbackup.1566933397.txt.gz
  • Dernière modification: Le 27/08/2019, 21:16
  • par 85.171.241.178