0

这段代码有什么问题?

sudo -u replicant rsync -av -e "ssh -o 'StrictHostKeyChecking no' -i /home/replicant/.ssh/id_rsa" --exclude 'media/' --exclude 'var/' --exclude '.svn' root@$ADMIN:/var/www/ /var/www/ &> /tmp/rsync
if
[ $? -ne 0 ]; 然后
回显“ date:错误 rsync'ing 代码库来自 $ADMIN 检查 /tmp/rsync” | mail -s "rsync 错误!" $DEVEMAIL
echo " date: 从 $ADMIN check /tmp/rsync 同步代码库出错" >> $LOGFILE
echo "root@$ADMIN:/var/www /var/www" >> $LOGFILE
exit
fi

我不断收到此错误:

权限被拒绝(公钥)。
rsync:连接意外关闭(到目前为止已收到 0 个字节)[Receiver]
rsync 错误:io.c(605)
[Receiver=3.0.9]处出现无法解释的错误(代码 255)

请帮忙。谢谢。

4

1 回答 1

0

尝试直接登录 SSH 以解决您的问题,然后继续进行 rsync 测试。所以开始:

ssh -o 'StrictHostKeyChecking no' -i /home/replicant/.ssh/id_rsa root@$ADMIN

旁注:

  • 不要root用于这样的任务
  • 在 Bash 脚本的开头添加set -eu,以便错误结束您的脚本并简化调试(例如,如果$ADMIN未定义,脚本将以错误结束)
于 2017-07-25T05:52:12.233 回答