CentOS 7
Sponsored Link

Rsync : Sync Files/Directories
2015/01/12
 
Copy files or directories from one location to an another host by rsync.
Basic usage of rsync is here.
If you'd like to set rsync automatically by cron or others, it need to configure like follows because authentication is required without settings. For example, Copy files or directories under the [/root/work] on dlp.srv.world to [/home/backup] on www.srv.world.
+----------------------+          |          +----------------------+
|     dlp.srv.world    |10.0.0.30 | 10.0.0.31|     www.srv.world    |
|                      +----------+----------+                      |
|     /root/work/*     |   ------------->    |     /home/backup/*   |
+----------------------+        copy         +----------------------+

[1] Configure on source host.
[[email protected] ~]#
yum -y install rsync
[[email protected] ~]#
vi /etc/rsync_exclude.lst
# specify files or directories you'd like to exclude to copy

test
test.txt

[2] Configure on destination host.
[[email protected] ~]#
yum -y install rsync
[[email protected] ~]#
vi /etc/rsyncd.conf
# any name you like

[backup]
# destination directory for copy

path = /home/backup
# hosts you allow to access

hosts allow = 10.0.0.30
hosts deny = *
list = true
uid = root
gid = root
read only = false
[[email protected] ~]#
mkdir /home/backup

[[email protected] ~]#
systemctl start rsyncd

[[email protected] ~]#
systemctl enable rsyncd

[3] It's OK. Execute rsync on Source Host like follows.
[[email protected] ~]#
rsync -avz --delete --exclude-from=/etc/rsync_exclude.lst /root/work/ www.srv.world::backup
# Add in cron if you'd like to run reguraly

# for example, run at 2:00 AM in a day

00 02 * * * rsync -avz --delete --exclude-from=/etc/rsync_exclude.lst /root/work/ www.srv.world::backup