Programme de synchronisation bidirectionnelle de gros files (images disque VM)

J'utilise massivement des machines virtuelles dans mon travail et j'ai besoin d'un moyen efficace de les synchroniser entre mes PC.

Je connais bigsync , mais ce programme fonctionne bien seulement pour la synchronisation unidirectionnelle (comme rsync).

Unison est également insuffisant, car il copy toujours les files cibles avant de les mettre à jour, ce qui est inacceptable pour les images disque> 16 Go.

J'ai besoin d'un outil ou d'un script pour la synchronisation bidirectionnelle, quelque chose qui fonctionnera comme bigsync sauf qu'il vérifiera d'abord la date de modification et si le contenu a changé après la dernière utilisation (système de files btrfs possède de belles fonctionnalités pour tester cela), et – contrairement à bigsync fonctionnera efficacement dans les deux sens (AFAIK bigsync fonctionne efficacement que d'une seule façon: de la source à la destination, pour l'autre, il faut l'appeler depuis l'extrémité distante).

En raison de la persistance de @ Kiwy que vous pourriez utiliser Git pour faire cela dans les commentaires, cela m'a callbacké un outil que j'avais vu il y a un moment appelé git-annex . En me rafraîchissant sur ce que git-annex peut faire, je me suis souvenu de venir à travers ce post dans les forums git-annex .

Synchroniser les files volumineux (images VM)

Salut,

Je pense utiliser git-annex pour synchroniser mon directory de machines virtuelles (Virtualbox) entre 3 pc. C'est assez grand: plus de 200 Go et certaines images ont une taille de 40 Go.

La synchronisation sera sur un LAN (évidemment). Il est déjà en place avec 2pc et à l'unisson mais la configuration du 3ème PC est encombrante. Est-ce que quelqu'un a des expériences avec git-annexe et une telle quantité de données?

Merci d'avance

Gabriele

A quoi l'auteur de git-annex répondu:

Ce volume de données ne devrait pas poser de problème pour git-annex.

La seule prise serait si vous exécutez ces images VM et que vous souhaitez les synchroniser comme ils ont été modifiés. Avec git-annex, vous aurez besoin de git annexe pour déverrouiller un file afin de permettre sa modification, puis l'annexe git l'ajoute et valide les modifications apscopes.

Donc c'est juste Git?

Mais soyez clair sur ce point. Git-annexe n'est pas pur Git. Il utilise l'interface que git fournit, mais utilise une variété de différents backends pour faire le va-et-vient réel des données. Lisez la page " Comment ça marche " pour plus d'informations à ce sujet.

Le contenu des files 'annexés' n'est pas stocké dans git, seuls les noms des files et d'autres métadonnées y restnt.

Pour en savoir plus sur la façon dont il gère le "transfert de données" jetez un oeil à cette section du site intitulée: " transfert de données .

Télécommands spéciales

Le génie de l'approche de git-annex est dans les "télécommands spéciales". Cela permet aux backends d'être essentiellement branchés et donc de nature modulaire. Vous pouvez voir une list complète des différentes " télécommands spéciales " ici.

Les references

  • Gestion de gros files binarys avec git