1.1在两台centos之间使用。可以使用yum install rsync -y 下载。

    环境简介:

     node1:192.168.1.1  为rsync的server
     node2:192.168.1.2  为rsync的client

    server的配置文件:
    [root@localhost ~]# vim /etc/rsyncd.conf
    pid file = /var/run/rsyncd.pid
    port = 873
    uid = root
    gid = root
    use chroot = no
    read only = no
    max connections = 5
    log file = /var/log/rsync.log  
    log format = %t %a %m %f %b
    syslog facility = local3
    timeout = 300

    [test]   
    path = /home/test             (注意此处后面不能加 / )
    list=yes   
    ignore errors    
    comment = test
    secrets file =/etc/rsyncd/rsyncd.pas
    read only = no


    server端的认证文件/etc/rsyncd/rsyncd.pas :

                               rsynctest:123456

    并且需要chmo6 600 /etc/rsyncd/rsyncd.pas

    client端的密码文件/etc/rsyncd/rsyncd.pas :

                               123456

    并且需要chmo6 600 /etc/rsyncd/rsyncd.pas


1.2 备份

    推送文件到server端
    client:
    推送send:既把client的文件send到server
     /usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd/rsyncd.pas     /home/test/  rsynctest@192.168.1.1::test

    拉文件到client
    拉received:既把server的文件拉到client
/usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd/rsyncd.pas    rsynctest@192.168.1.1::test  /home/test/

    注意:/home/test/目录最后需要加/


1.3另需要cron每天早上一点同步

[root@209-9-53-205 ~]# vim /etc/crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |

0 1 * * * root /usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd/rsyncd.pas rsynctest@192.168.1.1::brb /home/test/




2.window 以及centos间同步文件

2.1server端为centos,下载也为yum install -y rsync,client为window先看sever端的配置文件:

vim /etc/rsyncd.conf

pid file = /var/run/rsyncd.pid
port = 873
uid = root
gid = root
use chroot = no
read only = no
max connections = 5
log file = /var/log/rsync.log  
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300

[test]
path = /home/test
read only = false
write only = false
list=yes   
ignore errors    
comment = test
secrets file =/etc/rsyncd/rsyncd.pas
incoming chmod = Du=rwx,Dog=rx,Fu=rwx,Fgo=rx  (会强制把同步以后的目录权限改为755)


/etc/rsyncd/rsyncd.pas同上,需要 user:password,以及chmod 600


2.2 windows端

F:\cwrsync\rsync.exe  --delete -rvz --progress --exclude-from=/cygdrive/f/cwRsync/exclude.txt   --password-file=/cygdrive/f/cwRsync/rsyncd.pas.txt   /cygdrive/f/test/ newoauser@192.168.1.1::test


F:\cwrsync\rsync.exe   为rsync路径,如果没有将rysnc加入系统路径,则需要写全路径。

/cygdrive/f                  指的是f盘

rsync.exe                     若加参数-a ,会将window的属组属主上传为sever端,影响权限问题。

rsyncd.pas.txt              将server端设置的password写入

exclude.txt                  将需要排除的文件以及文件夹写入

                                    exit  (/cygdrive/f/test/ 目录下的exit目录,都是相对路径)

                                    ab*   (/cygdrive/f/test/ 目录下以ab开头的文件)