GNU/Linux >> Tutoriels Linux >  >> Linux

Synchronisation des fichiers en temps réel

Je ne l'ai pas utilisé moi-même mais je l'ai lu récemment. Il existe un démon appelé lsyncd , qui je suppose fait exactement ce dont vous avez besoin.

En savoir plus ICI


Synchronisation de fichiers en temps réel entre plusieurs serveurs en mode multi maître

Il existe un bon outil appelé lsyncd pour synchroniser des fichiers entre plusieurs serveurs en temps réel. Ici, j'ai essayé avec deux serveurs.

Hôtes :Serveur1 et Serveur2

Système d'exploitation utilisé :CentOS 7

Installez les packages ci-dessous sur les deux serveurs.

# yum install -y epel-release
# yum -y install lua lua-devel pkgconfig gcc asciidoc lsyncd

générer une clé ssh dans les deux serveurs et ajouter à authorized_keys dossier. [ajouter la clé publique du serveur1 au authorized_keys du serveur2 et la clé publique du serveur2 au authorized_keys du serveur1 fichier]

Configuration du serveur1

Ouvrir /etc/lsyncd.conf et commentez la configuration par défaut en utilisant -- au début de la ligne et ajoutez la configuration ci-dessous au fichier.

settings {
  logfile = "/var/log/lsyncd/lsyncd.log",
  delay = 1
}
sync {
  default.rsync,
  source="/home/test/public_html/",
  target="server2:/home/test/public_html/",
  rsync = {
    compress = true,
    acls = true,
    verbose = true,
    owner = true,
    group = true,
    perms = true,
    rsh = "/usr/bin/ssh -p 22 -o StrictHostKeyChecking=no"
  }
}

Changer l'IP cible en target paramètre.

Vous pouvez modifier le delay paramètre selon vos besoins. Ici, il est réglé sur 1 seconde.

Créez maintenant le répertoire des journaux.

# mkdir -p /var/log/lsyncd

Activez le lsyncd service pour démarrer automatiquement.

# systemctl enable lsyncd.service

Démarrez le service.

# systemctl start lsyncd.service

Configuration du serveur2

Suivez la même configuration que Server1 et modifiez le target IP.

Maintenant, la synchronisation est définie.

Vous pouvez vérifier l'activité à partir de tailf /var/log/lsyncd/lsyncd.log

Merci à MelBurslan pour sa suggestion.


Outils Inotify

Fournir une interface à inotify , composé de :

inotifywait

Cette commande bloque simplement les événements inotify, ce qui la rend appropriée pour une utilisation dans les scripts shell. Il peut surveiller n'importe quel ensemble de fichiers et de répertoires et peut surveiller de manière récursive des arborescences de répertoires entières.

inotifywatch

Cette commande collecte les statistiques d'utilisation du système de fichiers et affiche le nombre de chaque événement inotify.


Linux
  1. Outils d'administration système :utilisation de rsync pour gérer la sauvegarde, la restauration et la synchronisation des fichiers

  2. Trier une partie d'un fichier ?

  3. C ouvert vs ouvert

  4. Écrire dans le fichier .txt ?

  5. Qu'est-ce qu'un fichier .so.2 ?

Comment déplacer un fichier sous Linux

Comment installer le logiciel de synchronisation de fichiers à distance Syncthing sur Debian 11

Configuration de la synchronisation de fichiers Unison entre deux serveurs sur Debian 8 (Jessie)

Configuration de la synchronisation de fichiers Unison entre deux serveurs sur Debian 10 (Buster)

Éditeur VIM

Qu'est-ce qu'un fichier .sh ?