GNU/Linux >> Tutoriales Linux >  >> Linux

Sincronización de archivos en tiempo real

No lo he usado yo mismo, pero lo leí recientemente. Hay un demonio llamado lsyncd , que supongo que hace exactamente lo que necesitas.

Lea más sobre esto AQUÍ


Sincronización de archivos en tiempo real entre varios servidores en modo multimaestro

Hay una buena herramienta llamada lsyncd para sincronizar archivos entre múltiples servidores en tiempo real. Aquí lo he probado con dos servidores.

Anfitriones:Servidor1 y Servidor2

Sistema operativo utilizado:CentOS 7

Instale los siguientes paquetes en ambos servidores.

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

generar ssh-key en ambos servidores y agregar a authorized_keys expediente. [agregue la clave pública del servidor1 al authorized_keys del servidor2 y la clave pública del servidor2 al authorized_keys del servidor1 archivo]

Configuración del servidor 1

Abrir /etc/lsyncd.conf y comente la configuración predeterminada usando -- al comienzo de la línea y agregue la siguiente configuración al archivo.

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"
  }
}

Cambia la IP de destino en target parámetro.

Puedes cambiar el delay parámetro según su requisito. Aquí se establece 1 segundo.

Ahora cree el directorio de registro.

# mkdir -p /var/log/lsyncd

Habilite el lsyncd servicio para iniciarse automáticamente.

# systemctl enable lsyncd.service

Inicie el servicio.

# systemctl start lsyncd.service

Configuración del Servidor2

Siga la misma configuración que Server1 y cambie el target IP.

Ahora la sincronización está configurada.

Puedes consultar la actividad desde tailf /var/log/lsyncd/lsyncd.log

Gracias a MelBurslan por su sugerencia.


Inotify-herramientas

Proporcionar una interfaz para inotify , compuesto por:

inotifywait

Este comando simplemente bloquea los eventos de notificación, lo que lo hace apropiado para su uso en scripts de shell. Puede observar cualquier conjunto de archivos y directorios, y puede observar de forma recursiva árboles de directorios completos.

inotifywatch

Este comando recopila estadísticas de uso del sistema de archivos y genera recuentos de cada evento inotify.


Linux
  1. Herramientas de administrador de sistemas:uso de rsync para administrar la copia de seguridad, la restauración y la sincronización de archivos

  2. ¿Orden de redirecciones?

  3. Linux – ¿Todo es un archivo?

  4. ¿Ordenar parte de un archivo?

  5. Linux – ¿Sincronización de archivos en tiempo real?

Cómo mover un archivo en Linux

Cómo instalar el software de sincronización remota de archivos Syncthing en Debian 11

Configuración de la sincronización de archivos Unison entre dos servidores en Debian 8 (Jessie)

Configuración de la sincronización de archivos Unison entre dos servidores en Debian 10 (Buster)

Editor VIM

¿Qué es un archivo .sh?