一、前言:最近学习服务环境搭建,遇到了许多大大小小的问题,不过还好,经过我的一通努力终于都解决了,所以分享出来给自己留个纪念,同时也希望能帮助学习中的朋友。

二、环境:两台服务器环境相同

  1. 1 [root@czh backup]# uname -r
  2. 2 2.6.32-573.el6.x86_64
  3. 3 [root@czh backup]# uname -m
  4. 4 x86_64
  5. 5 [root@czh backup]# cat /etc/redhat-release
  6. 6 CentOS release 6.7 (Final)

三、服务器端配置文件

  1. 1 uid = rsync
  2. 2 gid = rsync
  3. 3 use chroot = no
  4. 4 max connections = 1000
  5. 5 timeout = 300
  6. 6 pid file = /var/run/rsyncd.pid
  7. 7 log file = /var/run/rsyncd.log
  8. 8 lock file = /var/run/rsyncd.lock
  9. 9 ignore errors = yes
  10. 10 read only = false
  11. 11 list = false
  12. 12 auth users = rsync_backup
  13. 13 secrets file = /etc/rsync.password
  14. 14 hosts allow = 172.16.0.0/24
  15. 15 hosts deny = 0.0.0.0/0
  16. 16 [backup]
  17. 17 path = /backup

四、rsync 错误总结

1、Q:rsync: failed to connect to 172.16.0.41: Connection refused (111)

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. rsync: failed to connect to 172.16.0.41: Connection refused (111)
  3. rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]

A: 1)先检查服务端服务是否启动。(服务端未启动daemon进程)

2、Q:rsync: could not open password file "/etc/rsync.password": No such file or directory (2)

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. rsync: could not open password file "/etc/rsync.password": No such file or directory (2)
  3. Password:

A:1)先检查服务端和客户端是否配置了密码文件,如果没有,则要在服务端和客户端配置密码文件,注意密码要统一。

2)检查服务器端配置文件中是否配置了“secrets file=    ”相应值。

3、Q:password file must not be other-accessible(可进入的,可访问的)continuing without password file

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. password file must not be other-accessible
  3. continuing without password file
  4. Password:

A:1)先查看服务器端和客户端的密码文件权限,统一改为600

4、Q:@ERROR: invalid uid rsync

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2.  
  3. @ERROR: invalid uid rsync
  4. rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]

A:1)先查看系统中是否存在配置文件中uid字段的值(用户,这里我用的是rsync用户),在服务器端执行命令 `id rsync`,如果没有,添加rsync用户,为了保证安全性,我们通常不给他登录权限,不创建家目录,命令为:useradd -M -s /sbin/nologin rsync(当然你也可以指定UID).

5、Q:@ERROR: chdir failed

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. @ERROR: chdir failed
  3. rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]

A:1)先检查服务器端是否有备份目录(和配置文件中模块下的path字段对应的路径),如果没有,创建出来,并授权给rsync用户管理。

6、Q:ERROR: module is read only

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. sending incremental file list
  3. ERROR: module is read only
  4. rsync error: syntax or usage error (code 1) at main.c(866) [receiver=3.0.6]
  5. rsync: read error: Connection reset by peer (104)
  6. rsync error: error in rsync protocol data stream (code 12) at io.c(759) [sender=3.0.6]

A:1)先检查配置文件中是否有”read only = false“ ,没有的话(系统默认为只读)我们就不能向这个模块中写入,因为它是只读的,加入” read only = false”,只读为假,即可写

2)如果有,我建议你在仔细看看,是不是写错了。

3)重新启动服务,可能是修改了配置没有加载。

7、Q:rsync: mkstemp ".passwd.u8iYqh" (in backup) failed: Permission denied (13)

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. sending incremental file list
  3. passwd
  4. rsync: mkstemp ".passwd.z0BuYu" (in backup) failed: Permission denied (13)

A:1)权限问题,检查服务器端的备份目录权限,授权给rsync管理

2)如果是多级子目录,根据Linux权限体系,可以在父目录在用-R 参数直接递归授权,也可以单个子目录授权。

8、Q:rsync: failed to connect to 172.16.0.41: No route to host (113)

  1. [root@czh ~]# rsync -avz /etc/passwd rsync_backup@172.16.0.41::backup --password-file=/etc/rsync.password
  2. rsync: failed to connect to 172.16.0.41: No route to host (113)
  3. rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]

 A:1)90%因为防火墙问题,实验条件下可以关闭防火墙,生产环境中加入通行。

方法:查看系统日志,上面会有系统的显示,比如,解决完上面的问题后,已经能成功推送上去了,但是仍然有一些小问题,终端显示是不会报错了,只有在日志中才能看到,如下:Name or service not know ,这是因为hosts没有解析。

  1. [1499] rsyncd version 3.0.6 starting, listening on port 873
  2. [1561] name lookup failed for 172.16.0.31: Name or service not known
  3. [1561] connect from UNKNOWN (172.16.0.31)
  4. [1561] rsync to backup/ from rsync_backup@unknown (172.16.0.31)

在/etc/hosts中加入解析:

  1. [root@czh backup]# cat /etc/hosts
  2. 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
  3. ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  4. 172.16.0.31 nfs
  5. 172.16.0.41 backup

Linux下rsync daemon模式下的错误汇总的更多相关文章

  1. linux虚拟机命令行模式下,某些命令显示乱码问题。

    刚安装了linux虚拟机,使用vi命令试着修改IP配置,结果出现乱码.配置IP的文件内容本身没有乱码,主要是vi编辑的命令行的提示出现乱码,例如,按i是插入模式,结果底下出现乱码提升,不是提示插入. ...

  2. 在Linux中的文本模式下手动安装 Parallels Tools

    1.启动虚拟机. 2.当看到提示 X Server 无法启动的消息时,使用 Ctrl+Option+F1(Ctrl+Alt+F1)切换到另一个虚拟控制台并输入登录信息. 3 从“虚拟机”菜单中选择“安 ...

  3. 【linux系列】vi模式下查找和替换

    一.查找 1.查找命令 /pattern<Enter> :向下查找pattern匹配字符串 ?pattern<Enter> :向上查找匹配字符串 在使用了查找命令之后,使用如下 ...

  4. linux命令-vim一般模式下光标移动

    vim 有一般模式,编辑模式,命令模式 ///////一般模式可以光标移动,复制,剪切,粘贴     编辑模式可以输入想输入的字符       命令模式刚才用到了set nu //////////// ...

  5. linux命令-vim一般模式下复制剪切粘贴

    删除光标后的一个字符 x 删除光标前的一个字符 shift+x 删除指定个数的字符 数字+x 删除一行字符 dd 剪切指定行数  数字dd  3dd 剪切3行 其实并没有删掉而是保存着剪切板里 粘贴在 ...

  6. Vmware下CentOs7 桥接模式下配置固定IP

    1.安装完CentOS7后 修改虚拟机网络适配器配置:改成桥接模式 2.设置Vmware的 编辑->虚拟网络编辑器 3.重启CentOs7 , 查看网络 # ip addr interface是 ...

  7. CTF线下赛AWD模式下的生存技巧

    作者:Veneno@Nu1L 稿费:200RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 原文:https://www.anquanke.com/post/id/8467 ...

  8. 在windows下的CLI模式下如何运行php文件

    https://blog.csdn.net/evkj2013/article/details/52313728 https://jingyan.baidu.com/article/da1091fb09 ...

  9. 问题三:Appium 的 UIAutomator2 模式下使用 sendKeys 出现错误

    在Appium默认的模式下,可以对TextFiled控件进行sendKeys操作: 设置capabilities.setCapability("automationName",&q ...

随机推荐

  1. MySQL开发——【数据的基本操作】

    增加数据 基本语法: insert into 数据表 [字段名称1,字段名称2..] values (数据1,数据2...); 特别注意:针对数据类型整型.浮点型数据可以不加单引或双引号,但是如果字段 ...

  2. MySQL优化(三) 表的设计

    1.什么样的表才符合3范式(3 NF)? 表的范式,是首先符合1范式,才能满足2范式,进一步才能满足3范式:(现在最高级别是6范式) 第一范式:1NF 是对属性的原子性约束,要求表的属性(列)具有原子 ...

  3. MySQL表与表之间的关系详解

    外键 说到表与表之间的关系就不得不说到一个关键词:外键 MySQ中的外键是什么,和表与表之间有什么关联? 外键(foreign key)又叫外连接, 在数据库中发挥着重要的作用 尤其是对于表和表之间的 ...

  4. 第六次spring会议

    昨天所做之事: 我对软件加上了保密功能. 今天所做内容: 我对软件加上了一键解密功能. private void 一键还原ToolStripMenuItem_Click(object sender, ...

  5. 叙述 activemq 与spring 主题实现 小功能实现

    在上一篇文章里 我说到了 maven的配置  我现在直接说 xml配置 首先我先描述 生产者的信息 <?xml version="1.0" encoding="UT ...

  6. PHP字符串函数之 strpos stripos strrpos strripos

    strpos – 查找字符串首次出现的位置 stripos – 查找字符串首次出现的位置(不区分大小写) strrpos – 计算指定字符串在目标字符串中最后一次出现的位置 strripos – 计算 ...

  7. 分享Pos函数(比FastPos还要快)

    ): Integer; ): Integer; 主要用途是搜索字符串中第n个Substr. 经过测试,这2个函数的速度比直接用Pos+Copy快好几倍(如果字符串够长,可能10几倍) 比Pos+Del ...

  8. 配置docker官方源并用yum安装docker

    一.docker的官方安装文档: https://docs.docker.com/engine/installation/linux/centos/ 由docker给的文档可以看出它也只是去配置了一个 ...

  9. 网易易盾最新一代Java2c加固究竟有什么厉害之处?

    导语:几个月前,网易易盾正式推出Java2c加固.它以独有的"静态保护"技术,使得应用程序中的代码出现"下沉",达到不可逆的效果,兼顾"冷热启动时间& ...

  10. koa-static与react-create-app搭配的路径

    概述 前端路由与后端路由的结合一直是一个难题.koa-static这个中间件能够把静态资源"搬到"后端路由上面去,react-create-app在不解构的情况下只会把资源打包到b ...