Rsync服务常见问题汇总讲解:
 
- rsync服务端开启的iptables防火墙
 【客户端的错误】
 No route to host
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 rsync: failed to connect to 172.16.1.41: No route to host (113)
 rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]
 【异常问题解决】
 关闭rsync服务端的防火墙服务(iptables)
 [[email?protected] mnt]# /etc/init.d/iptables stop
- rsync客户端执行rsync命令错误
 【客户端的错误】
 The remote path must start with a module name not a /
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::/backup
 ERROR: The remote path must start with a module name not a /
 rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】
 rsync命令语法理解错误,::/backup是错误的语法,应该为::backup(rsync模块)
- rsync服务认证用户失败*****
 【客户端的错误】
 auth failed on module oldboy
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 Password:
 @ERROR: auth failed on module backup
 rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】
- 密码真的输入错误,用户名真的错误
- secrets file = /etc/rsync.password指定的密码文件和实际密码文件名称不一致
- /etc/rsync.password文件权限不是600
- rsync_backup:123456密码配置文件后面注意不要有空格
- rsync客户端密码文件中只输入密码信息即可,不要输入虚拟认证用户名称
 
- rsync服务位置模块错误
 【客户端的错误】
 Unknown module ‘backup‘
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 @ERROR: Unknown module ‘backup‘
 rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】
- /etc/rsyncd.conf配置文件模块名称书写错误
 
 
- rsync服务权限阻止问题
 【客户端的错误】
 Permission denied
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 Password:
 sending incremental file list
 hosts
 rsync: mkstemp ".hosts.5z3AOA" (in backup) failed: Permission denied (13)
 sent 196 bytes received 27 bytes 63.71 bytes/sec
 total size is 349 speedup is 1.57
 rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]
 【异常问题解决】
- 备份目录的属主和属组不正确,不是rsync
- 备份目录的权限不正确,不是755
 
 
- rsync服务备份目录异常
 【客户端的错误】
 chdir failed
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 Password:
 @ERROR: chdir failed
 rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】
- 备份存储目录没有建立
- 建立的备份存储目录和配置文件定义不一致
 说明:如果没有备份存储目录
 
- rsync服务无效用户信息
 【客户端的错误】
 invalid uid rsync
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup
 Password:
 @ERROR: invalid uid rsync
 rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】
 rsync服务对应rsync虚拟用户不存在了
 
- 客户端已经配置了密码文件,但免秘钥登录方式,依旧需要输入密码
 【客户端的错误】
 password file must not be other-accessible
 【错误演示过程】
 [[email?protected] tmp]# rsync -avz /etc/hosts [email?protected]::backup --password-file=/etc/rsync.password
 password file must not be other-accessible
 continuing without password file
 Password:
 sending incremental file list
 sent 26 bytes received 8 bytes 5.23 bytes/sec
 total size is 349 speedup is 10.26
 【异常问题解决】
 rsync客户端的秘钥文件也必须是600权限
- 
rsync客户端连接慢问题
 IP === 域名 反向DNS解析
 【错误日志信息】
 错误日志输出
 2017/03/08 20:14:43 [3422] params.c:Parameter() - Ignoring badly formed line in configuration file: ignore errors
 2017/03/08 20:14:43 [3422] name lookup failed for 172.16.1.31: Name or service not known
 2017/03/08 20:14:43 [3422] connect from UNKNOWN (172.16.1.31)
 2017/03/08 20:14:43 [3422] rsync to backup/ from [email?protected] (172.16.1.31)
 2017/03/08 20:14:43 [3422] receiving file list
 2017/03/08 20:14:43 [3422] sent 76 bytes received 83 bytes total size 349
 正确日志输出
 2017/03/08 20:16:45 [3443] params.c:Parameter() - Ignoring badly formed line in configuration file: ignore errors
 2017/03/08 20:16:45 [3443] connect from nfs02 (172.16.1.31)
 2017/03/08 20:16:45 [3443] rsync to backup/ from [email?protected] (172.16.1.31)
 2017/03/08 20:16:45 [3443] receiving file list
 2017/03/08 20:16:45 [3443] sent 76 bytes received 83 bytes total size 349
 【异常问题解决】
 查看日志进行分析,编写rsync服务端hosts解析文件
 10 rsync服务没有正确启动
 【错误日志信息】
 Connection refused (111)
 【错误演示过程】
 [[email?protected] ~]# rsync -avz /etc/hosts [email?protected]::backup
 rsync: failed to connect to 172.16.1.41: Connection refused (111)
 rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]
 【异常问题解决】
 [[email?protected] ~]# rsync --daemon
 [[email?protected] ~]# ss -lntup |grep rsync
 tcp LISTEN 0 5 :::873 :::* users:(("rsync",1434,5))
 tcp LISTEN 0 5 :873 :* users:(("rsync",4))
 [[email?protected] ~]# rsync -avz /etc/hosts [email?protected]::backup
 Password:
 sending incremental file list
 hosts
 sent 196 bytes received 27 bytes 49.56 bytes/sec
 total size is 349 speedup is 1.57
 扩展说明:rsync启动服务扩展参数
 --port 指定rsync服务端口号信息,默认是873
 --config=xxx 指定识别的rsync服务配置文件信息
 
rsync服务扩展应用
 ① 守护进程多模块功能配置
 第一步:修改配置文件
 vim /etc/rsyncd.conf
 [backup01]
 comment = "backup dir by oldboy"
 path = /backup
 [backup02]
 comment = "backup dir by oldboy"
 path = /backup02
 
第二步:创建多模块目录
 mkdir /backup02
 chown -R rsync.rsync /backup02
 
第三步:重启服务程序
 killall rsync
 rsync --daemon
 
第四步:进行测试检查
 
② 守护进程的排除功能实践
 第一种数据备份排除方式:--exclude
 rsync -avz /test_dir/ --exclude=b --exclude=d [email?protected]::backup01 --password-file=/etc/rsync.password
 rsync -avz /test_dir/ --exclude={b,d} [email?protected]::backup01 --password-file=/etc/rsync.password
 rsync -avz /test_dir/ --exclude={b..d} [email?protected]::backup01 --password-file=/etc/rsync.password
 第二种数据备份排除方式:--exclude-from=file
 rsync -avz /test_dir/ --exclude-from=./exclude_file.txt [email?protected]::backup01 --password-file=/etc/rsync.password
 
每行一个目录/文件名称;
 要保护本身文件名称;
 ③ 守护进程来创建备份目录
 rsync -avz /etc/hosts --exclude-from=./exclude_file.txt [email?protected]::backup01/sa/ --password-file=/etc/rsync.password #sa运维目录
 rsync -avz /etc/hosts --exclude-from=./exclude_file.txt [email?protected]::backup01/dev/ --password-file=/etc/rsync.password #dev开发目录
 rsync -avz /etc/hosts --exclude-from=./exclude_file.txt [email?protected]::backup01/dba/ --password-file=/etc/rsync.password #dba数据库管理目录
 ④ 守护进程的访问控制配置
 三种情况:
 
- 只有白名单,白名单网段或主机信息允许。其余阻止
- 只有黑名单,黑名单网段或主机信息阻止,其余允许
- 有黑名单也要白名单,白名单网段或主机信息允许,黑名单网段或主机信息阻止,其余允许
 建议只选择前两种方式配置
 hosts allow = 172.16.1.0/24
 hosts deny = 0.0.0./32
⑤ 守护进程无差异同步配置
 我有的,你也有;我没有的,你也不能有
 rsync -avz /test_dir/ --delete [email?protected]::backup01 --password-file=/etc/rsync.password
 说明:一定要谨慎使用,否则可能会清空备份目录;
 如果要快速清空目录数据,也可以使用无差异同步清空
 rsync -avz /dev/null --delete [email?protected]::backup01 --password-file=/etc/rsync.password
 ⑥ 守护进程的列表功能配置
 list = false
 说明:表示是否列表显示rsync服务端所有模块信息
 [[email?protected] test_dir]# rsync [email?protected]:: backup01 "backup dir by oldboy" backup02 "backup dir by oldboy"