Sincronización de archivos simple entre Linux

  

Ayer, la sincronización de mysql se realizó correctamente y, por cierto, la investigación de sincronización de códigos de sitios web. La búsqueda en línea de rsync, unison y otro software puede lograr la sincronización. Miró el vs ya instalado rsync, luego use esto. El proceso de instalación de rsync se ignora, puede usar yum o apt-get para instalar, también puede descargarlo en el sitio web oficial: http://rsync.samba.org

El entorno actual es, dos direcciones IP fijas Servidor Linux, para lograr una sincronización regular de un directorio del servidor A al servidor B. Así que quiero tratar a A como el servidor rsync y a B como el cliente rsync.

Configure A primero:

A es centos arriba, use xinetd para ejecutar rsync. En general, xinetd también se incluye en el sistema, y ​​no hay yum.

Modifique el archivo de inicio rsync en xinetd: vi /etc/xinetd.d/rsync

Cambie deshabilitar = sí para deshabilitar = no, el código completo es el siguiente: # predeterminado: desactivado # descripción: El servidor rsync es una buena adición a un servidor ftp, ya que \\ # permite la suma de comprobación de crc etc.service rsync {disable = noflags = IPv4socket_type = streamwait = nouser = rootserver = /usr /bin /rsyncserver_args = --daemonlog_on_failure + = USERID}

A continuación modifique el archivo de configuración rsync, ubicado en /etc/rsyncd.conf, si no, puede crear uno nuevo: uid = root # run root as gid = rootuse chroot = nomax connections = 5 # conexión simultánea Número de archivo pid = /var/run/rsyncd.pidlock file = /var/run/rsyncd.locklog file = /var/log/rsyncd.logtransfer logging = yesport = 873 # 用 口 [www] #module nombre, solo complete la lectura Solo = sí # sí es la ruta de solo lectura = /home /www # directorio a sincronizar (múltiples separados por espacios) comentario = www #best como el nombre del módulo auth users = rsync #allow que los usuarios pueden sincronizar (se requiere más adelante) Establecer) archivo de secretos = /etc /r Sync.pas #userprofile (nombre de usuario + contraseña) hosts allow = 111.111.111.111 #ip address permitido para la sincronización excludee = tmp /123 /#disordered directory (ruta relativa, separada por espacios)

Cree un archivo para almacenar la clave, la ubicación del archivo de secretos arriba: Nombre de usuario: Contraseña

por ejemplo,

admin: admin

Inicie xinetd, vea rsync can No, el puerto 873 está ocupado.

Puede probarlo con telnet en el servidor B. Si puede configurar iptables, necesita abrir el puerto 873.

El siguiente paso es configurar el cliente. Dado que no es una sincronización bidireccional, simplemente instale rsync.

Establezca el archivo de clave (leído desde dentro de rsync runtime). Mi entrada en /etc/rsync.pas, el contenido es la contraseña establecida anteriormente.

Se puede realizar lo siguiente sincronizando el comando rsync: rsync -avz --password-file = /etc /rsync.pas [email protected] :: www /home /www

avz No explicaré estos parámetros, y los parámetros proporcionados por rsync son mucho mejores.

--password-file es el archivo de clave anterior, @ es la cuenta establecida por el servidor anteriormente, @ es la ip del servidor, @: www es el nombre del módulo, se sincroniza con el directorio local /home /www .

Si el comando se ejecuta correctamente, puede agregar el comando anterior a crontab para lograr la sincronización de archivos cronometrada.

Copyright © Conocimiento de Windows All Rights Reserved