1、rsync的安装;
  软件安装过于简单,目前Linux各大发行版都提供这个软件包,当然你也能自己编译安装,在目前的情况下,我看没太大的必要
 

2、配置

rsync安装好后 ,服务端是需要进行配置的 。需要你编写一个rsync.conf的配置文件(注:默认的情况下,这个文件是不存在,需要你手动创建)。文件的大概格式如下 :

read only = yes
uid = root
gid = root
list = yes
hosts allow = 1.2.3.4   #这个地址是你需要可以访问的IP地址

max connections = 10    #这个是你最大的链接数
log file = /var/log/rsync.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
secrets file = /etc/rsyncd.secrets # 这个是你密码文件的存放路径,设置这个参数可以满足你自动同步的需要,也就是客户端在每次执行命令的时候不要在输入验证密码了)
[apache]   #模块名
path=file  # 这个是你需要访问的模块名的绝对路径
 

   (当然,我这个是一个非常简化的配置,具体的其他一些参数儿可以参考网络上的其他资料,这里就不多说了。目前这个配置可以满足两台服务器之间的数据同步了。你可以根据自己的需要,添加多个模块)

  接下来设置密码文件 rsyncd.secrets ,这个文件默认也是不存在的。

vi /etc/rsyncd.secrets

rsync:rsync123   # 文件的格式是  用户名:密码    注意,这里除了账户信息,不要填入其他字符,特别注意不要加多余的空格,我就是因为多打了一个空格,导致密码文件怎么匹配不了。

 然后更改一下文件的属性 设置成400即可

chmod 400 /etc/rsyncd.secrets

 

到此。服务端的配置就完成了。我们可以重新启动一下rsync服务,确保文件生效

ps -ef | grep rsync

kill -9 rsyncPID

rsync --daemon --config=/etc/rsync.conf --port=873  (--daemon 是让rsync 以服务器模式运行)

 

接下来我们配置一下客户端

客户端的配置也比较简单,只需要添加一个认证的密码文件即可,比如我们添加一个rsyncd.secrets

vim rsyncd.secrets

rsync123 (这个文件只需要添加密码即可 不用添加用户名,注意同样不要出现不必要的字符)

权限设置为400

然后可以在客户端测试一下

rsync -vazu --progress --password-file=/etc/rsyncd.secrets rsync@192.168.150.4::apache /home/

receiving file list ...
2 files to consider
./
1
           0 100%    0.00kB/s    0:00:00 (xfer#1, to-check=0/2)

sent 103 bytes  received 124 bytes  454.00 bytes/sec
 

这样 ,rsync的服务就已经配置好了 。

剩下的 就是在crontab里设置了,这里就不说了。可以设置每隔多久同步一次

至于rsync命令的一些参数这里也不说了。网上有很多

 

 

3、常见的一些问题

rsync: read error: Connection reset by peer (104)

网上关于这个问题的解决方法有很多。如更新到3.0以上的版本。但是我的

是因为端口号不一样导致的。我在服务端是以3387这个端口运行的rsync,

而在用客户端运行的是时候没有指明,客户端因此就用默认的873端口链接

所以被拒绝。这时候只需要在命令里加入--port=3387就可以了。

当然,服务端的rsync.conf里的host allow里面也要加上你的客户端IP才行

 

--delete选项时, 两边的目录不能以/*结尾, 因为shell会把*扩展为该目录下的所有文件

 

 

使用 rsync 时,后面主机名与路径之间的冒号的个数, 一个冒号表示使用ssh协议进行数据传输, 两个冒号表示使用rsync协议进行数据传输

 

 

  基本上我个人总结出来的就是这些了,下面这里有个链接,是更为详细的介绍

如果觉得我的文章没能帮到大家 ,推荐可以去这里面看看

http://www.sudu.cn/info/html/edu/20070101/284714.html