Rsync  默认端口873

Wirer:zuoyuezong@gmail.com

描述:rsync服务是基于C/S模式的  作用:简单的说就是同步文件用的

环境: 两台linux服务器 192.168.152.153(hostnameamoeba) 作为服务器 ;

192.168.152.150作为客户端(hostname localhost)

目的:同步my.cnf配置文件到192.168.152.150服务器

操作步骤:

1.安装
可以直接安装yum -y install rsync
也可以源代码安装
[root@amoeba ~]# wget   http://rsync.samba.org/ftp/rsync/src/rsync-3.1.0.tar.gz
[root@amoeba ~]# tar -xf rsync-3.1.0.tar.gz
[root@amoeba ~]# cd rsync-3.1.0
[root@amoeba rsync-3.1.0]# ./configure
[root@amoeba rsync-3.1.0]# make && make install
2.配置rsync
[root@amoeba rsync-3.1.0]# vim /etc/rsyncd.conf
pid file=/var/run/rsyncd.pid
log file=/var/log/rsyncd.log
lock file = /var/run/rsyncd.lock
uid = root
gid = root
max connections = 100  #最大允许连接数量
transfer logging = ture
log format = %h %o %f %l %b
slp refresh = 300
[a]
path = /etc/zzy
auth user = www    #连接的用户
read only = no
ignore errors
secrets file = /etc/rsyncd.secrets   #密码文件
list=false
hosts allow =192.168.152.0/24    #允许的网段或者IP
hosts deny =   0.0.0.0/32
保存退出
[root@amoeba rsync-3.1.0]# vim /etc/rsyncd.secrets
123 #密码随便写
保存退出
[root@amoeba zzy]# chmod 600  /etc/rsyncd.secrets   一定要是600权限负责后面会出错
[root@amoeba rsync-3.1.0]# scp /etc/rsyncd.secrets 192.168.152.150:/etc (将密码文件传给150)
[root@amoeba rsync-3.1.0]#  /usr/bin/rsync --daemon --config=/etc/rsyncd.conf  (启动rsync)
[root@amoeba rsync-3.1.0]# netstat  -ntlp |grep 873
tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      10525/rsync     
tcp        0      0 :::873                      :::*                        LISTEN      10525/rsync    (可以看出rsync已经启动)
[root@amoeba rsync-3.1.0]# telnet  192.168.152.153 873
Trying 192.168.152.153...
Connected to 192.168.152.153.
Escape character is '^]'.
@RSYNCD: 30.0
3.客户端可以开始 同步文件了
[root@localhost zzy]# /usr/bin/rsync -vrtpogL --delete --progress --password-file=/etc/rsyncd.secrets   www@192.168.152.153::a   /var/zyz
从153上同步文件到本地的/var/zyz目录 注意--delete 有了这个参数代表完全同步 就是说如果你/var/zyz下的所有文件都和 /etc/zzy(上面服务端定义的)一致。不一致的会删除
[root@localhost zzy]# /usr/bin/rsync -vrtpogL  --progress --password-file=/etc/rsyncd.secrets   www@192.168.152.153::a   /var/zyz
如果没有加--delete这个参数则代表只下载153那边的/etc/zzy目录下的所有文件
以上的是做的向服务端取文件方式的 还可以推送文件这个需要双端都配置成服务器配置步骤跳过
/usr/bin/rsync -vrtpogL  --progress --password-file=/etc/rsyncd.secrets  /usr/local/src     www@192.168.152.150::a
将/usr/local/src下的文件推送到 150的配置文件里面定义的位置