0 votes

Comment garder 2 dossiers synchronisés en temps réel ?

J'aimerais que les dossiers de données de Keybase soient sauvegardés sur mon ordinateur local avec une sorte de solution de synchronisation des fichiers en temps réel.

Chaque fois que Keybase est ouvert, tous les fichiers locaux sont synchronisés avec le dossier associé à Keybase, et vice versa.

Quelles sont les solutions open source actuelles qui permettent d'y parvenir ?

Merci

1voto

moodforaday Points 2633

Bonjour et bienvenue sur le site !

En supposant que vous avez des dossiers "A" et "B", il y a deux façons de penser à la synchronisation.

1) La synchronisation "One Way" synchronisera les modifications et les suppressions du dossier A vers le dossier B mais ignorera les modifications du dossier B (et ne les synchronisera pas vers le dossier A).

2) Une synchronisation "bidirectionnelle" permettrait de modifier les dossiers "A" ou "B" et de répercuter ces modifications dans l'autre dossier.

La synchronisation "One Way" peut être réalisée avec rsync (bien que vous puissiez vouloir installer une version plus récente que celle qui est fournie avec MacOS, car la version par défaut est très ancienne). Je recommande brasser pour ça.

La synchronisation "bidirectionnelle" est plus délicate, et je ne connais pas d'outil open-source qui vous permette de créer une synchronisation bidirectionnelle de deux dossiers sur le même ordinateur.

(C'est une autre considération : certains outils ne fonctionneront que si les dossiers "A" et "B" se trouvent sur des ordinateurs différents. rsync peut fonctionner avec l'un ou l'autre).

Une question à laquelle il faut réfléchir est de savoir ce que vous essayez d'accomplir en ayant une telle copie miroir. Par exemple, si vous supprimez accidentellement un fichier dans le dossier "A" et qu'il se synchronise immédiatement avec le dossier "B" et y supprime le fichier, avez-vous vraiment accompli quelque chose ?

Si ce que vous cherchez à accomplir est de pouvoir restaurer un fichier accidentellement supprimé, ou de revenir à une version précédente d'un fichier qui a été modifié d'une manière que vous voulez annuler, c'est un scénario différent de celui qui consiste simplement à garder deux dossiers synchronisés.

Je ne connais que vaguement Keybase, mais je me demanderais également si un tel miroir serait utile en cas de corruption. C'est pourrait Il peut être plus utile de disposer d'un "instantané" de tous les fichiers de Keybase à un moment donné. En fonction de la fréquence de modification de ses fichiers, vous pouvez utiliser la fonction launchd pour créer un tar.bz2 o tar.gz (ou tar.xz si vous installez également xz avec brew ) "instantané" de Keybase, et mettre un horodatage dans le nom du fichier, de sorte que si vous avez besoin de revenir sur certaines modifications, vous savez que vous avez tous les fichiers tels qu'ils existaient à un moment donné.

Encore une fois, je ne suis pas sûr à 100% que cela fonctionnerait avec Keybase, mais je l'ai utilisé avec d'autres applications.

Maestro du clavier

Chaque fois que Keybase est ouvert, tous les fichiers locaux sont synchronisés avec le dossier associé à Keybase, et vice versa.

Si vous souhaitez déclencher cette opération à chaque fois que l'application Keybase est lancée et/ou quittée, vous devez utiliser la fonction Maestro du clavier .

Je ne connais pas d'option open-source pour cela.

1voto

3c71 Points 101

Personnellement, j'utilise rsync à l'heure actuelle. Ce n'est pas en temps réel, mais l'exécuter toutes les 30 secondes est suffisant pour mon cas d'utilisation. Ce n'est pas non plus une bonne solution si des fichiers sont édités simultanément à partir de plusieurs serveurs, mon cas d'utilisation étant principalement la création de nouveaux fichiers.

J'ai essentiellement 5 serveurs qui distribuent un service web qui utilise des fichiers locaux et je dois donc garder un dossier commun en synchronisation sur tous les serveurs.

Je fais quelque chose comme ça sur les 5 serveurs :

rsync -rzlvtuog <path> <srvX:path>

Cette commande est répétée pour chacun des 4 autres nœuds de la configuration. Les drapeaux importants sont t et u pour mettre à jour les timestamps et ne copier que les fichiers ayant été mis à jour.

Cela n'aide pas à la suppression, mais au moins tous les fichiers sont synchronisés, quel que soit le serveur sur lequel ils sont créés.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X