搭建环境:
服务端和客户端系统
Centos 6.5 X64位
注:默认防火墙和selinux已关闭
服务端名称及IP:
服务端名称[root@rsyncser] IP为:10.10.10.22
客户端名称[root@rsynccli01] IP为:10.10.10.24
一、服务端的配置
1、查看是否安装rsync
[root@nfsser ~]# rpm -qa rsync
rsync-3.0.6-9.el6_4.1.x86_64
1.1、如果没有,可能过yum源在线安装[root@nfsser ~]# yum install -y rsync
2、查看rsync的版本
[root@nfsser ~]# rsync --version
rsync version 3.0.6 protocol version 30
3、因为服务端默认没有rsyncd.conf文件,所以要自己创建
[root@rsyncser ~]# vim /etc/rsyncd.conf
#rsync_config_________start
#created by greenhad 2017-11-14
#qq:1187216523
##rsync.conf start##
uid = rsync
gid = rsync
use chroot = no
max connections = 200 #最大连接数
timeout = 300 #连接超时
pid file = /var/run/rsyncd.pid #pid 指进程号
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log #rsync的log日志
[greenhand] #模块,模块可以设置多个
path = /greenhand/ #模块位置 相当于nfs共享的目录
ignore errors #忽略错误
read only = false #可读可写rw
list = false # 列表 不允许
hosts allow = 10.10.10.0/24 #允许IP
hosts deny = 0.0.0.0/32 #禁止IP
auth user = rsync_backup #虚拟用户
secrets file = /etc/rsync.password #用户对应密码文件
#rsync_config_________end
4、创建用户[root@rsyncser ~]# useradd -s /sbin/nologin rsync
5、创建目录并授权
[root@rsyncser ~]# mkdir /greenhand -p
[root@rsyncser ~]# chown -R rsync.rsync /greenhand/
6、设置虚拟用户和密码并追加到文件
[root@rsyncser ~]#echo "rsync_backup:cainiao" >/etc/rsync.password
[root@rsyncser ~]# cat /etc/rsync.password
rsync_backup:cainiao
7、设置密码文件权限为600
[root@rsyncser ~]# chmod 600 /etc/rsync.password
[root@rsyncser ~]# ll /etc/rsync.password
-rw------- 1 root root 20 Nov 28 16:32 /etc/rsync.password
8、启动rsync服务并查看是否启动
[root@rsyncser ~]# rsync --daemon
[root@rsyncser ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1093/sshd
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 1509/rsync
[root@rsyncser ~]# ps -ef |grep rsync
root 1509 1 0 16:58 ? 00:00:00 /usr/src/rsync-3.0.7/rsync --daemon
root 1673 1603 0 17:40 pts/2 00:00:00 grep rsync
以上服务端配置正常
二、客户端配置
客户端只需要把密码追加配置文件并设置权限即可(权限为600)
[root@rsynccli01 data]# echo "cainiao">/etc/rsync.password
[root@rsynccli01 data]# cat /etc/rsync.password
cainiao
[root@rsynccli01 data]# chmod 600 /etc/rsync.password
[root@rsynccli01 data]# ll /etc/rsync.password
-rw------- 1 root root 7 Nov 28 16:32 /etc/rsync.password
客户端已经设置完成。
三,通过rsynsc进行同步文件
1、从客户端推到服务端
查看服务端文件
[root@rsyncser greenhand]# ll #暂时为空,
通过rsync把客户端
[root@rsynccli01 data]# pwd
/root/data
[root@rsynccli01 data]# ls
101 102 103 104 105
需要把data里的文件推到服务端:
[root@rsynccli01 data]# rsync -avz /root/data/ [email protected]::greenhand --password-file=/etc/rsync.password
sending incremental file list
./
101
102
103
104
105
sent 1126 bytes received 486 bytes 3224.00 bytes/sec
total size is 0 speedup is 0.00
已经同步到服务端。
然后查看服务端目录:
[root@rsyncser greenhand]# ll
total 0
-rw-r--r-- 1 rsync rsync 0 Nov 24 08:16 101
-rw-r--r-- 1 rsync rsync 0 Nov 24 08:16 102
-rw-r--r-- 1 rsync rsync 0 Nov 24 08:16 103
-rw-r--r-- 1 rsync rsync 0 Nov 24 08:16 104
-rw-r--r-- 1 rsync rsync 0 Nov 24 08:16 105
2、从服务端拉到本地/root/data目录下
[root@rsynccli01 data]# pwd
/root/data
[root@rsynccli01 data]# ls
[root@rsynccli01 data]# rsync -avz [email protected]::greenhand /root/data/
receiving incremental file list
./
101
102
103
104
105
sent 509 bytes received 1157 bytes 1110.67 bytes/sec
total size is 0 speedup is 0.00
以上rsync配置完成