Instalación rsync server (quien recibira los datos)
CentOS7
#yum -y install rsync
Ubuntu 20.04
#sudo apt-get install rsync
Se crea o edita el siguiente archivo /etc/rsyncd.conf
#sudo nano /etc/rsyncd.conf
# sample rsyncd.conf configuration file
# GLOBAL OPTIONS
#motd file=/etc/motd #log file=/var/log/rsyncd # for pid file, do not use /var/run/rsync.pid if # you are going to run rsync out of the init.d script. # The init.d script does its own pid file handling, # so omit the “pid file” line completely in that case. # pid file=/var/run/rsyncd.pid #syslog facility=daemon #socket options=
# MODULE OPTIONS
[Nombre_del_modulo]
comment = Importa sitio “Nombre del sitio” del server de desarrollo path = /var/www/pub use chroot = no # max connections=10 lock file = /var/lock/rsyncd # the default for read only is yes… read only = false list = yes uid = root gid = rot # exclude = # exclude from = # include = # include from = # auth users = # secrets file = /etc/rsyncd.secrets
strict modes = yes hosts allow = server.com hosts deny = * ignore errors = no ignore nonreadable = yes transfer logging = no log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes. timeout = 600 refuse options = checksum dry-run dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tb
reiniciar demonios.
#systemctl restart rsyncd
En el equipo donde esta la información que se quiere exportar lanzar el comando rsync
-fake-super y -super se requieren para poder tener los privilegios de root al manejar los directorios.
-chown debe llevar el numero de usuario y grupo del servidor destino que tiene los privilegios sobre los directorios(deben ser los numeros y no los nombres).
-i es la llave privada del ssh del root.
path_origen el path que se pretende copiar lleva “/” al final.
Modulo es el que se definio en la configuración del server rsync.
nano /etc/rsync_exclude.lst (los archivos y directorios a excluir,uno por linea)
notar que despues del web10 hay una / significa que solo copiara el contenido de lo contrario tratara de crear web10 en el destino si es que no existe.
Esta copia pone privilegio del usuario origen o de root, es conveniente checar el owner y el grupo al final de la copia