rsync时权限被拒绝错误

时间:2017-04-21 02:25:51

标签: linux bash shell sh rsync

我们有一个脚本可以将文件从主服务器转发到许多服务器。

主服务器:只有一个主机

许多服务器:考虑10台主机

下面的脚本

!/bin/sh

if [ $# -ne 2 ]
then
   echo "Usage: $0 <server conf> <path conf>"
   exit
fi

myDir=`dirname $0`
serverConf="$myDir/$1"
pathConf="$myDir/$2"
#rsFlags="-e ssh -v --stats --archive --delete -p -t -T /var/tmp"
rsFlags="-e ssh -v --stats --archive --no-g --delete -T /var/tmp"

for server in `/bin/cat $serverConf | grep -v "^#" | egrep -v "^ *$"`
do
   for path in `/bin/cat $pathConf | grep -v "^#" | egrep -v "^ *$"`
   do
      echo "rsync $path to $server at `/bin/date`"
      ssh -q $server "if [ ! -d $path ]; then /bin/mkdir -p $path; fi"
      rsync $rsFlags $path/ $server:$path
   done
done
~

从主服务器复制文件时,(Directory : /eqstore/tpettp/netprobe/ )

所有9个主机都忽略了特定文件,但脚本试图将此文件单独复制到最后一个(10)主机。在另外10组主机中尝试了相同的脚本,但情况类似(尝试仅在最后一个(10)主机的文件下面复制)。

文件:

-rw------- 1 tpettp   ettp 294027264 Apr 19 07:31 core.10179 

由于复制此文件,我们的autosys作业失败

Error : rsync: send_files failed to open "/eqstore/tpettp/netprobe/core.10179": Permission denied (13)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]

如何将文件忽略给所有主机,但不忽略最后一个主机。另外如何解决此权限被拒绝错误

请帮助解决这个问题。如果问题不明确,请告诉我

0 个答案:

没有答案
相关问题