我创build了一个批处理脚本来备份我们的服务器:
#!/bin/bash user=$1 # create user dir ssh [email protected] -p 5774 mkdir -p /var/backup/server.tst/incremental/$user # backup mail dir rsync -rvz --del --rsh='ssh -p5774' /home/$user/imap [email protected]:/var/backup/server.tst/incremental/$user cd /home/$user/domains ls -1 | while read -r domain do sh /etc/pxl/backup/domain.sh $user $domain done
但是当我运行它sh script.sh username
挂起。
首先我sending incremental file list
,之后是不再响应。 当我按ctrl-C(中止脚本)输出更改:
sync error: unexplained error (code 130) at rsync.c(543) [sender=3.0.7] sending incremental file list public_html/gh.html public_html/index.php public_html/cgi-bin/.htaccess public_html/... (and so on)
..但挂起了。 当我再次按下ctrl-C时,我得到:
rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(543) [sender=3.0.7]
在双方我安装了相同的版本(3.0.7,协议30)。 我已经阅读了这个主题,但是这不能解决我的问题。
有人知道这里发生了什么事吗? 我该如何解决? 先谢谢你!
这个问题可能是当rsync在删除接收器上的文件时遇到问题。 尝试–ignore – 错误,看看是否是这样的情况。
尝试使用-v(或2)运行脚本。 详细的输出将显示你在哪里/为什么停滞。 另外,validation您的转义字符和绝对path。 他们是rsync失败的常见原因。