首先,感谢您点击此主题并考虑内容:)我们有一个大型脚本来处理30多台服务器的备份。备份服务器尝试rsync的系统是一个服务器,它从多个其他服务器获取文件并将它们存储在具有不同所有者的sep文件夹中。它是一个被监禁的SCP环境。
无论如何,我在运行我的脚本之后在其中一个目录上遇到了这个错误 无法找到解决问题的好方法:
2017-03-09 02:34:06,594 - root - INFO - Command: '/usr/bin/rsync','-akh',
'--rsh=ssh -c arcfour -F /root/.ssh/dbconfig','--delete',
'--stats','--timeout=7200','--bwlimit=2500000',
'shen-prod@bck3a.domain.com:~/first/incoming/ ~/second/incoming/',
'/usr/local/shen/backups/shen-prod/mysql/2017-03-09'
2017-03-09 02:34:06,771 - root - WARNING - Permission denied, please try again.
2017-03-09 02:34:06,772 - root - WARNING - Permission denied, please try again.
2017-03-09 02:34:06,773 - root - WARNING - Permission denied (publickey,password).
2017-03-09 02:34:06,773 - root - WARNING - rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
2017-03-09 02:34:06,774 - root - INFO - added /usr/local/domain/backups/shen-prod/mysql/2017-03-09 to the progress file
2017-03-09 02:34:06,775 - root - WARNING - rsync error: unexplained error (code 255) at io.c(605) [Receiver=3.0.9]
因此,对我来说这种奇怪之处在于,相同的脚本能够在同一系统上正确同步不同的文件夹。示例:上面它在/ usr / local / shen / backups / shen-prod / mysql / 2017-03-09上失败。当脚本的下一部分运行时,它将在同一服务器上正确同步/ usr / local / corn / backups / corn-prod / mysql / 2017-03-09。脚本的两个部分都在同一服务器上引用相同的SSH密钥文件,但它不适用于shen-prod。
我无法从hosts文件中删除所有内容并尝试重新开始,因为有这么多系统在一天中不断使用此脚本。我应该只将另一个ssh-copy-id发送到可以备份的服务器吗?我不想打破使用该密钥的其他备份。
让我知道你们对此的看法。我到了一点,我过度思考一切,并冻结了。在此先感谢您的考虑!
取值
编辑:以下是实际备份脚本的两个部分。 “玉米刺激”工作正常,“shen-prod”无效。它们都在同一主机上,只在不同的目录中。目录的权限设置正确。每个用户(corn-prod和shen-prod)都是该目录的所有者。
[corn-prod]
dest_dir=/usr/local/domain/archive/backups/corn-prod
user=corn-prod
host=bck3a.domain.com
rsync_options= --rsh=ssh -c arcfour -F /root/.ssh/dbackupconfig
sources=~/primary/incoming/ ~/secondary/incoming/
[shen-prod]
dest_dir=/usr/local/domain/archive/backups/shen-prod
user=shen-prod
host=bck3a.domain.com
rsync_options= --rsh=ssh -c arcfour -F /root/.ssh/dbackupconfig
sources=~/primary/incoming/ ~/secondary/incoming/
非常感谢!!!