一、rsync_service配置

vim /etc/rsyncd.conf ======创建配置文件,配置如下

==================================================

#rsyncd_config_______________start

##rsyncd.conf start##

#rsync uid,gid=65534(默认)

##rsync start model =====  rsync --daemon

uid = rsync     #固定rsync用户

gid = rsync #

use chroot = no #

max connections = 200 #有多少客户端可以同时连本服务器 

timeout = 300 #超时时间  300=300s

pid file = /var/run/rsyncd.pid #进程pid文件目录

lock file = /var/run/rsync.lock #排队访问服务器端

log file = /var/log/rsyncd.log #进程故障日志

[oldboy] #模块 相当于共享目录  也可以设置多模块 方法:把模块拉到最后面增加

path = /oldboy/ #定义模块路径

ignore errors #忽略错误

read only = false #相当于可读可写

list = false #允许列表

hosts allow = 10.0.0.0/24 #允许的主机

hosts deny = 0.0.0.0/32 #拒绝网段

auth users = rsync_backup #虚拟用户,进程用户

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

#exclude=a b 排除禁止上传的文件a=filename  b=filename

#rsync_config_______________end

==================================================


启动rsync:

rsync --daemon


查看端口是否正确==默认:873

netstat -lntup|grep 

netstat -lntup|grep 873

cat /var/log/rsyncd.log 也可以看下启动日志


创建配置文件里的 /oldboy目录

mkdir /oldboy -p


创建rsync进程用户并给予oldboy属主

useradd rsync -s /sbin/nologin

chown -R rsync.rsync /oldboy/


把账号密码写到密码配置文件里去,并赋予600权限(安全权限)

echo "rsync_backup:abu888" >/etc/rsync.password

chmod 600 /etc/rsync.password


服务器端配置完毕。



客户端配置

客户端很简单,装一个rsync,把密码些到密码文件里面  把密码文件的权限降低至600

 yum install rsync -y


echo "dev.dev." >/etc/rsync.password

chmod 600 /etc/rsync.password




实践及用法————|一定得是在客户端操作,服务器端不可执行



 Access via rsync daemon:进程方式

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

      1、Pull:rsync -avz rsync_backup@192.168.30.193::oldboy/ /data1 --password-file=/etc/rsync.password

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

      2、Pull:rsync -avz rsync://rsync_backup@192.168.30.193/oldboy /data1/ --password-file=/etc/rsync.password 

============================================================================================================================

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

      1、Push:rsync -avz /data1/ rsync_backup@192.168.30.193::oldboy/ --password-file=/etc/rsync.password


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

      2、Push:rsync -avz /data1/ rsync://rsync_backup@192.168.30.193/oldboy --password-file=/etc/rsync.password 


排除单个推送:--exclude=filename  排除多个用{filename,filename}以此类推

 1、rsync -avz --exclude={aaa.sh,oldboy,abu.sh} /data1/ rsync_backup@192.168.30.193::oldboy/ --password-file=/etc/rsync.password

 

排除多个,把需要排除的filename写入一个文件里面,然后使用,--exclude-from=创建的filename

 2、rsync -avz --exclude-from=/paichu.log /data1/ rsync_backup@192.168.30.193::oldboy/ --password-file=/etc/rsync.password 


排除单个拉法:--exclude=filename  排除多个用{filename,filename}以此类推

rsync -avz --exclude={abu.sh,oldboy} rsync_backup@192.168.30.193::oldboy/ /data1/ --password-file=/etc/rsync.password

rsync -avz --exclude-from=/paichu.log /data1/ rsync_backup@192.168.30.193::oldboy/ --password-file=/etc/rsync.password 


排除多个,把需要排除的filename写入一个文件里面,然后使用,--exclude-from=创建的filename

rsync -avz --exclude-from=/root/paichu.log rsync_backup@192.168.30.193::oldboy/ /data1/ --password-file=/etc/rsync.password 


rsync无差异同步

--deltet

rsync -avz --delete /data1/ rsync_backup@192.168.30.193::oldboy/ --password-file=/etc/rsync.password

rsync -avz --delete / rsync_backup@192.168.30.193::oldboy/ /data1 --password-file=/etc/rsync.password

rsync server小结:

1、vi /etc/rsyncd.conf(用户,目录,模块,虚拟用户,及密码文件)

2、创建共享目录/oldboy

3、创建rsync用户。并且授权访问/oldboy/

4、创建密码文件,复制配置文件里的路径,然后添加密码内容。

内容虚拟用户名:密码

5、密码文件权限600

6、rsync --daemon然后放入/etc/rc.local

7、tail /var/log/rsyncd.log


rsync client(多个)

1、密码文件和服务端没任何关系。命令时

--password-file=/etc/rsync.password 内容:密码

2、/etc/rsync.password 600

3、用命令执行推或拉


排除:

1、防火墙和selinux

2、看日志/var/log/rsyncd.log

3、整个部署流程整体考虑排查。

4、操作习惯当做一个大事。


杀死进程的方法:

1、[root@test oldboy]# cat /var/run/rsyncd.pid 

4970

[root@test oldboy]# kill `cat /var/run/rsyncd.pid`


2、[root@test oldboy]# pkill rsync




http://oldboy.blog.51cto.com/2561410/775056 老男孩老师的linux运维人员必会开源运维工具体系