Rsync bashスクリプトエラー(送信:コマンドが見つかりません)

Rsync bashスクリプトエラー(送信:コマンドが見つかりません)

私のサーバーにはほとんど動作するバックアップスクリプトがあります。 rsyncコマンドのみがログにエラーを発生させ、解決策が見つかりません。

これは部分私のスクリプト(作業内容を削除しました):

#!/bin/bash

TIMESTAMP=`date +%Y%m%d_%H%M`
BKROOT="/home/roots/backups"
BKDIR="/home/roots/backups/$TIMESTAMP"

LOG="$BKROOT/backup_$TIMESTAMP.log"

function log () 
{
    now=$(date +"%T")
    echo -e "$now: $1"
}

echo -e "Starting backup..."

if [ ! -d "$BKDIR" ]; then
        echo -e "Creating Backup directory $BKDIR..."
        mkdir -p $BKDIR
        mkdir -p $BKDIR/games
        mkdir -p $BKDIR/games/minecraft
fi

# Redirect all output to log
exec >> $LOG 
exec 2>&1

log "Saving Minecraft..."
`/usr/bin/rsync -av /var/games/minecraft $BKDIR/games/minecraft --exclude 'plugins/dynmap/web'`
log

# Sleeping 10 seconds to allow file access
sleep 10

# Compressing backup
log "Compressing backup to $BKROOT/backup_$TIMESTAMP.tar.gz..."
`/bin/tar czvfP $BKROOT/backup_$TIMESTAMP.tar.gz "$BKDIR"`
if [[ $? != 0 ]]; then
    log "Error during compression"
else 
    log "Compression OK"
fi

# Uploading backup to Backup storage
log "Uploading backup and log to Backup storage..."
`/usr/bin/scp $BKROOT/backup_$TIMESTAMP.tar.gz [email protected]:/`
if [[ $? != 0 ]]; then
    log "Error during upload of backup"
else 
    log "Uploading of backup OK"
fi
`scp $LOG [email protected]:/`
if [[ $? != 0 ]]; then
    log "Error during upload of backup log"
else 
    log "Uploading of backup log OK"
fi
log

TIMEEND=`date "+%m/%d/%Y @ %H:%M"`

# Logging free space on backup location
echo 'df -h' | sftp [email protected]

# Sending mail
`echo "Done" | mutt -s "Backup completed on $TIMEEND" -i $LOG [email protected]`

# Removing backup folder
echo -e "Removing temporary folder"
log "Removing temporary folder..."
`rm $BKDIR -rf`

スクリプトはcronjobを介してrootとして実行されます。 rsyncコマンドを除いて、すべてがうまく機能します。それぞれは、ログファイルに次のエラーを記録します。

20:19:38: Minecraft 保存中...
/home/roots/scripts/backup.sh: 行 126: 送信: コマンドが見つかりません
20:21:07:
20:21:40:
www データファイルのバックアップ / home / root/scripts/backup.sh:行141:送信
:コマンドが見つかりません/home/roots/scripts/backup.sh:行142:送信:コマンドが見つかりませ

。 :03:FHEMバックアップのコピー中
/home/roots/scripts/backup.sh:行157:送信:コマンドが見つかりません

4つのrsyncコマンドはすべて、ソースパスとターゲットパスを除いて、まったく同じパラメータを持ちます。

サーバーはUbuntu 16.04.2 LTS(Xenial Xerus)を実行します。

私が間違っていることを知っている人はいますか?

ベストアンサー1

次の行があります。

`/usr/bin/rsync -av /var/games/minecraft $BKDIR/games/minecraft --exclude 'plugins/dynmap/web'`

バックティックは次のことを意味します。実行コマンドの出力それらの間。したがって、rsyncコマンドが実行され、いくつかの出力が生成され、シェルはこの出力を実行してみてください。バックティックのみを削除してください。

/usr/bin/rsync -av /var/games/minecraft $BKDIR/games/minecraft --exclude 'plugins/dynmap/web'

おすすめ記事