GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je créer des sauvegardes incrémentielles atomiques d'un système Linux en cours d'exécution à l'aide d'un logiciel gratuit ?

Comme vous l'avez mentionné, BTRFS peut le faire. C'est ainsi que je sauvegarde régulièrement mon ordinateur portable (qui a une disponibilité de 9 semaines, 5 jours au moment où je tape ceci).

Dans mon système de fichiers BTRFS, j'ai des sous-volumes. La manière dont vous divisez vos données en sous-volumes et dont vous les imbriquez n'a pas d'importance ici, tant que vous n'utilisez pas la racine du système de fichiers pour stocker les données que vous souhaitez sauvegarder.

Les commandes suivantes sont destinées à illustrer la syntaxe et les possibilités, je recommande de les encapsuler dans un script qui s'exécute en tant que cronjob ou systemd.timer.

Pour prendre un instantané d'un sous-volume :

btrfs subvolume snapshot -r <source> <dest>

Pour sérialiser un instantané :

btrfs send <snapshot>

Pour sérialiser un instantané par rapport à un plus ancien (c'est-à-dire différentiel) :

btrfs send -p <start> <end>

Pour générer un diff, compresser à la volée, et envoyer au serveur de secours, avec suivi de "progression" :

btrfs send -p <start> <end> | \
    pv -bart | \
    pbzip2 --best | \
    ssh [email protected] "cat > /backups/name.bz2"

Pour faire la même chose, mais recréez les sous-volumes BTRFS sur le serveur de sauvegarde plutôt que de simplement compresser les flux BTRFS :

btrfs send -p <start> <end> | \
    pv -bart | \
    pbzip2 --best | \
    ssh [email protected] "pbzip2 -d | \
    btrfs receive <target>"

Pour restaurer, appliquez vos instantanés dans l'ordre à un nouveau système de fichiers BTRFS, via btrfs receive .

Voici plus d'informations sur les sauvegardes incrémentielles BTRFS


Comme @mark-k-cowan l'a dit, vous pouvez le faire avec des instantanés btrfs. btrfs est trop immature pour moi. L'utilisation de zfs et de son instantané serait préférable. Comme @brady-dean l'a dit, les instantanés LVM sont une méthode indépendante du système de fichiers. Les instantanés LVM peuvent avoir un énorme impact négatif sur les performances.

Acronis dispose d'un module de noyau qui fonctionne au niveau de la couche de blocage pour créer des instantanés. Le pilote Datto Block est un module de noyau GPLv2 (ahem "freeware") qui fait la même chose. (Avertissement :je ne l'ai jamais utilisé.)


Linux
  1. Comment sauvegarder l'intégralité de votre système Linux à l'aide de Rsync

  2. Comment vérifier si le système Linux s'exécute sur un système physique ou une machine virtuelle ?

  3. Peux-tu le faire? Compiler des programmes C sous Linux à l'aide de la commande Make

  4. Comment vérifier si un processus est toujours en cours d'exécution en utilisant Python sous Linux ?

  5. Comment puis-je trouver ma version de shell à l'aide d'une commande Linux ?

Comment trouver les détails du système Linux à l'aide d'inxi

Comment ajouter un nouveau périphérique au système de fichiers BTRFS sous Linux

Comment monter un système de fichiers Linux distant à l'aide de SSHFS

Comment mettre à jour le système openSUSE Linux

Comment obtenir des informations sur le matériel sous Linux à l'aide de la commande dmidecode

Comment puis-je profiler du code C++ exécuté sous Linux ?