拓扑:

Rsync总结笔记—以守护进程(socket)方式传输数据_传输数据

服务端配置:rsync的配置文件是/etc/rsyncd.conf注意这个文件默认是不存在的,需要手动创建。

下面是一个配置好的rsyncd.conf

######rsyncd.conf#######

uid = rsync    ----à非系统虚拟用户

gid = rsync

use chroot =no  -à防止出现安全问题

maxconnections = 200   --à最大连接数

timeout = 300           --à超时时间

pid file =/var/run/rsyncd.pid  --à进程pid所在的文件

lock file =/var/run/rsync.lock  -à

log file =/var/log/rsyncd.log    -à出错的日志文件

[zhaofan]    --à模块

path = /zhaofan/   à可以理解为共享目录

ignore errors   --à忽略错误

read only =false

list = false     -à是否允许列表

hosts allow =192.168.1.0/24  --à允许的主机

hosts deny =0.0.0.0/32

auth users =rsync_backup      -à虚拟用户

secrets file= /etc/rsync.password    -à用户对应的密码文件

#######rsyncd.config########

以上是对配置文件的配置

启动rsync服务进程:rsync –daemon

Rsync的端口是:873

[root@A ~]#rsync --daemon

[root@A ~]#netstat -lntup|grep 873

tcp        0     0 0.0.0.0:873                0.0.0.0:*                   LISTEN      27933/rsync        

tcp        0     0 :::873                     :::*                        LISTEN      27933/rsync    

 

 

[root@A ~]#cat /var/log/rsyncd.log

2016/01/0912:03:39 [27933] rsyncd version 3.0.6 starting, listening on port 873

[root@A ~]#     

[root@A ~]#

 

服务启动后需要的操作:

[root@A /]#ls -dl zhaofan

drwxr-xr-x. 2root root 4096 Jan  9 12:06 zhaofan

[root@A /]# useradd rsync -s /sbin/nologin

[root@A /]# chown -R rsync.rsync /zhaofan

 [root@A /]# ls -dl zhaofan

drwxr-xr-x. 2rsync rsync 4096 Jan  9 12:06 zhaofan

[root@A /]#

 

[root@A /]#echo "rsync_backup:zhaofan">/etc/rsync.password

[root@A /]#

这里 rsync_backup rsync的虚拟用户名,zhaofan  是rsync的虚拟用户名的密码

[root@A /]#chmod 600/etc/rsync.password

[root@A /]#ls -dl /etc/rsync.password

-rw-------. 1root root 21 Jan  9 12:10/etc/rsync.password

同时需要关掉selinx和防火墙

以上所有的服务端的配置都配置好了

下面是客户端配置

echo"zhaofan">/etc/rsync.password

[root@B ~]#chmod 600/etc/rsync.password

到现在为止,所有的配置都配置好了

注意:rsync的命令一定是在客户端进行操作的。

       Access via remote shell:

         Pull: rsync [OPTION...][USER@]HOST:SRC... [DEST]

         Push: rsync [OPTION...] SRC...[USER@]HOST:DEST

 

       Access via rsync daemon:

         Pull: rsync [OPTION...][USER@]HOST::SRC... [DEST]

               rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC...[DEST]

         Push: rsync [OPTION...] SRC...[USER@]HOST::DEST

               rsync [OPTION...] SRC...rsync://[USER@]HOST[:PORT]/DEST

 

 

在客户端上验证拉结果

[root@ru /]#rsync -avz rsync_backup@192.168.1.100::zhaofan /data

Password:

receivingincremental file list

./

a

b

c

d

e

f

g

 

sent 207bytes  received 413 bytes  248.00 bytes/sec

total size is7  speedup is 0.01

[root@ru /]#

 

下面是推到服务器上

[root@rudata]# touch {1..10}

[root@rudata]# ls

1  10 2  3  4 5  6  7 8  9  a b  c  d e  f  g

[root@rudata]# rsync -avz /data/ rsync_backup@192.168.1.100::zhaofan

Password:

sendingincremental file list

./

1

10

2

3

4

5

6

7

8

9

 

sent 536bytes  received 201 bytes  294.80 bytes/sec

total size is7  speedup is 0.01

[root@rudata]#

如果想在过程中不用输入密码的方法:

[root@rudata]# rsync -avz rsync_backup@192.168.1.100::zhaofan /data --password-file=/etc/rsync.password

receivingincremental file list

./

10

11

12

13

14

15

 

sent 182bytes  received 590 bytes  1544.00 bytes/sec

total size is7  speedup is 0.01

[root@rudata]#

这样在过程中就不需要输入密码了