web-dev-qa-db-fra.com

En utilisant directement la duplicité, est-il possible d'avoir plusieurs plans de sauvegarde?

Si je comprends bien, la duplicité est l’outil en ligne de commande permettant de créer des sauvegardes. Elle peut être utilisée de manière autonome (c’est-à-dire qu’aucun DejaDup n’est impliqué) pour créer des sauvegardes.

Est-il possible de configurer plusieurs plans de sauvegarde avec différents calendriers et sources/cibles? En particulier je voudrais:

  • sauvegardez régulièrement mon dossier de départ complet comme je le fais maintenant avec deja-dup, c’est-à-dire chaque fois que je connecte mon lecteur externe et la sauvegarde est due.
  • sauvegardez différents ensembles de dossiers sur un serveur distant (Strato HiDrive, donc ftp, smb ou rsync) manuellement (idéalement, une commande "de déclenchement" que je lance), car je dois me trouver dans un endroit disposant d'une connexion Internet rapide ceci (je parle d'environ 200 Go ici)

Je pense que cela nécessiterait juste un peu de temps pour configurer les différentes commandes pour la sauvegarde à distance. La sauvegarde locale pourrait rester dans DejaDup. Mais la duplicité sera-t-elle capable de gérer cela? Ou va-t-il être confondu avec les différentes sauvegardes? Également: à quoi ressembleront les performances des sauvegardes à distance? Comment le mécanisme diff + copy actuel fonctionnera-t-il dans le cas distant?

Pourquoi je demande c'est juste que avec DejaDup je ne reçois qu'un seul plan de sauvegarde , Back in Time ne supporte que les copies locales (je devrais donc monter le ftp localement et diff ce qui semble un gaspillage de bande passante) et rsnapshot tilise des liens durs et doit donc être exécuté sur la cible ). mais la duplicité semble pouvoir faire ce que je veux ...

3
black_puppydog

En général, la réponse est oui. Duplicity est très flexible et vous pouvez sauvegarder différentes parties de votre système différemment. Il s’agit toutefois de maîtriser la ligne de commande de duplicité.

2
January

Est-il possible de configurer plusieurs plans de sauvegarde avec différents calendriers et sources/cibles?

Oui. Dans Duplicity, vous lancerez une commande pour chaque programme. Duplicity n'a pas de programmateur intégré, vous utilisez plutôt Cron . Dans sa forme la plus simple, une sauvegarde Duplicity programmée par Cron ressemblerait à ceci:

  1. Créez un script bash contenant la commande Duplicity:

    #!/bin/bash
    # Filename: myBackup.sh
    duplicity --full-if-older-than 1M \
       --exclude-filelist excludeList.txt \
         / sftp://[email protected]/some_dir
    

    Ce script fera une sauvegarde complète une fois par mois. Sinon, une sauvegarde incrémentielle sera effectuée. Il effectuera une sauvegarde du répertoire racine (/), mais exclura/inclura en fonction de la liste ci-dessous. Cela sauvegardera la sauvegarde sur le serveur sftp (assurez-vous d’installer les clés ssh pour que cela fonctionne lorsque le script est exécuté par cron. Si vous exécutez le script manuellement, vous avez le choix de vous passer des clés si vous êtes prêt à entrer votre clé. Mot de passe chaque fois que vous l'exécutez.

  2. Faire une liste d'exclusion (exludeList.txt):

    **[Cc]ache*
    **[Hh]istory*
    **[Ss]ocket*
    **[Tt]humb*
    **[Tt]rash*
    **.kvm
    **.local/share/icons
    **.rpmdb
    **.thumbnails
    **_NOBACKUP*
    /home/user/VirtualBox VMs/**
    /home/user/Downloads/**
    + /home/user
    + /var/www
    + /root
    + /etc
    **
    

    Dans notre commande Duplicity, nous indiquons que la source est /, et si vous n'avez pas de fichier d'exclusion, tout ce qui se trouve sous le répertoire racine est inclus dans la sauvegarde.

    Le double astérisque ** remplace chaque chemin de fichier ou . Nous listons d’abord les fichiers que nous voulons exclure. Celles-ci seront exclues même si elles sont contenues dans l'un des répertoires que nous demandons à Duplicity d'inclure. Ensuite, nous indiquons les répertoires à inclure (lignes commençant par +). En fin de compte, nous demandons à Duplicity d'exclure tout ce que nous n'avions pas mentionné auparavant, à savoir **.

  3. Planifiez ceci avec Cron en créant le fichier suivant dans votre /etc/cron.daily pour l'exécuter une fois par jour:

    #!/bin/bash
    myBackup.sh
    

sauvegardez régulièrement mon dossier de départ complet comme je le fais maintenant avec deja-dup, c’est-à-dire chaque fois que je connecte mon disque externe et que la sauvegarde est due.

Ajustez la commande de sauvegarde à votre convenance. Pour effectuer la sauvegarde lorsque le lecteur externe est connecté, vous pouvez par exemple:

  • Mettez un script dans /etc/cron.hourly qui vérifie l'état de la sauvegarde (par exemple, lit la date dans un fichier journal créé lors de l'exécution de la sauvegarde). Si la sauvegarde n'a pas été effectuée aujourd'hui, le script vérifie si le lecteur est monté. Si le lecteur est monté, la sauvegarde est effectuée.

  • Ecrivez un service qui s'exécute lorsque vous branchez votre lecteur de sauvegarde .

sauvegardez différents ensembles de dossiers sur un serveur distant (Strato HiDrive, donc ftp, smb ou rsync) manuellement (idéalement, une commande "de déclenchement" que je lance), car je dois me trouver dans un endroit disposant d'une connexion Internet rapide ceci (je parle d'environ 200 Go ici)

Celui-ci est simple: créez simplement un script qui exécute Duplicity et utilise un fichier d'exclusion, comme décrit ci-dessus.

Bonne chance! Duplicity est un logiciel très polyvalent et stable. Si vous n'êtes pas habitué à écrire des scripts bash, son utilisation peut être un peu difficile, mais je dirais certainement que cela vaut la peine d'essayer.

Faites-moi savoir s'il manque des informations dans cette réponse.

1
PetaspeedBeaver