执行rsync同步命令时,报错如下:
rsync error:error starting client-server protocol(code 5) at main.c(1503)[sender=3.0.6]
执行的rsync命令(rsync_forum.sh)为:
day=
date -d today +%Y%m%d_%H
/usr/bin/rsync -avP –port=3189 -C –exclude=.svn/ –exclude=xdebug_log/ –exclude=logs/ /www/web/forum/ 192.168.1.111::forum >> /opt/rsynclog/$day.log 2>&1
即,将当前服务器的/www/web/forum/文件同步到远程服务器192.168.1.111上的forum模块。
因此,报错是因为rsync在执行同步时,未找到192.168.1.111配置的forum模块,该模块是在配置文件rsyncd.conf中配置的。
找到配置文件(我服务器是/etc/rsyncd.conf ),添加forum模块配置:
[forum]
path = /www/web/forum
comment = web
ignore errors
read only = no
list = no
transfer logging = no
然后,重新启动rsync:
查找已开启的rsync:
webuser@wn01v etc]$ ps -ef|grep rsync
root 4821 1 0 08:36 ? 00:00:00 /usr/bin/rsync –daemon –port=31777
杀死进程:
[webuser@wn01v etc]$ kill -9 4821
-bash: kill: (4821) - Operation not permitted
重新开启进程,报错rsyncd.pid文件已存在,创建失败:
[webuser@wn01v etc]$/usr/bin/rsync –daemon –port=3189
failed to create pid file /var/run/rsyncd.pid: File exists
删除rsyncd.pid文件:
[webuser@wn01v etc]$ rm -f /var/run/rsyncd.pid
重新启动:
[webuser@wn01v etc]$ /usr/bin/rsync –daemon –port=3189
rsync进行同步镜像备份:
rsync是linux/UNIX 系统下的文件同步和数据传输工具,不但传输速度快,而且在传输时,可以比对本地端与远程主机欲复制的文件内容,而仅复制两端有差异的文件而已,所以传输时间相对降低很多。
rsync传输方式至少可以通过三种模式来工作:
① 本地shell模式:
rsync -av /etc /tmp (将/etc/的数据备份到/tmp/etc内)
rsync -av /etc/ /tmp (将/etc/的数据备份到/tmp内,并不复制目录本身)
② 远程shell模式:
rsync -av license 192.168.12.251:test 若以root身份执行此命令,会提示输入密码,完成密码验证后,在远程主机的root用户根目录下创建test目录,然后将license目录及该目录下的内容复制过来。
③ rsync 列表模式:
rsync -a 192.168.12.251:test 以root用户身份查看远程主机192.168.12.251的test目录下的内容
④ 服务器模式:
基于C/S模式,启动守护进程。