共计 2445 个字符,预计需要花费 7 分钟才能阅读完成。
最近经常要在一台新服务器上部署环境,很多东西可以直接从别的服务器上备份下来而不用重新下载安装。
就是使用 rsync 命令:首先要下载 rsync 并安装到“源服务器”,具体过程参考本文最后的连接。
然后在“源服务器”中配置 rsync.conf 文件,一般在 /etc/rsyncd.conf。
在该文件中添加以下语句:
[liujian]
path=/data1/liujian/
uid=root
gid=root
read only = no
hosts allow = 127.0.0.1/16 *****/255.255.255.0
保存后运行命令:usr/bin/rsync –daemon –config=/etc/rsyncd.conf
然后在“目标服务器”中运行命令:rsync -avzP root@**.**.**.**::liujian /data1/liujian/test/(其中 ******* 为“源服务器”IP)
然后如果没有问题就会看到进度条了。
把 rsync 错误报告说清楚
Rsync configure:
配置一:
ignore errors
说明:这个选项最好加上,否则再很多 crontab 的时候往往发生错误你也未可知,因为你不可能天天去看每时每刻去看 log,不加上这个出现错误的几率相对会很高,因为任何大点的项目和系统,磁盘 IO 都是一个瓶颈
Rsync error:
错误一:
@ERROR: auth failed on module xxxxx
rsync: connection unexpectedly closed (90 bytes read so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(150)
说明:这是因为密码设置错了,无法登入成功,检查一下 rsync.pwd,看客服是否匹配。还有服务器端没启动 rsync 服务也会出现这种情况。
错误二:
password file must not be other-accessible
continuing without password file
Password:
说明:这是因为 rsyncd.pwd rsyncd.sec 的权限不对,应该设置为 600。如:chmod 600 rsyncd.pwd
错误三:
@ERROR: chroot failed
rsync: connection unexpectedly closed (75 bytes read so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(150)
说明:这是因为你在 rsync.conf 中设置的 path 路径不存在,要新建目录才能开启同步
错误四:
rsync: failed to connect to 218.107.243.2: No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]
说明:防火墙问题导致,这个最好先彻底关闭防火墙,排错的基本法就是这样,无论是 S 还是 C,还有 ignore errors 选项问题也会导致
错误五:
@ERROR: access denied to www from unknown (192.168.1.123)
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)
说明:此问题很明显,是配置选项 host allow 的问题,初学者喜欢一个允许段做成一个配置,然后模块又是同一个,致使导致
错误六:
rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(244) [generator=2.6.9]
rsync error: received SIGUSR1 (code 19) at main.c(1182) [receiver=2.6.9]
说明:导致此问题多半是服务端服务没有被正常启动,到服务器上去查查服务是否有启动,然后查看下 /var/run/rsync.pid 文件是否存在,最干脆的方法是杀死已经启动了服务,然后再次启动服务或者让脚本加入系统启动服务级别然后 shutdown -r now 服务器
错误七:
rsync: read error: Connection reset by peer (104)
rsync error: error in rsync protocol data stream (code 12) at io.c(604) [sender=2.6.9]
说明:原数据目录里没有数据存在
RSync 实现文件备份同步详解 http://www.linuxidc.com/Linux/2014-09/106967.htm
利用 inotifywait 监控主机文件和目录 http://www.linuxidc.com/Linux/2013-03/81075.htm
利用 inotify+rsync 实现 Linux 文件批量更新 http://www.linuxidc.com/Linux/2012-01/52132.htm
inotify-tools+rsync 实时同步文件安装和配置 http://www.linuxidc.com/Linux/2012-06/63624.htm
rsync 同步完整配置 http://www.linuxidc.com/Linux/2013-06/85781.htm
CentOS 6.5 下 Rsync 远程同步 http://www.linuxidc.com/Linux/2014-05/101084.htm
Rsync 的详细介绍 :请点这里
Rsync 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-05/117021.htm