LINUX.ORG.RU
решено ФорумAdmin

Скрипт неправильно выполняеться при запуске кроном


0

1

При запуске вручную выполняется правильно, из крона стартует*, но на удалённом хост не появляется файл с бекапом.

* - May 17 00:11:01 v50628 CROND[20401]: (root) CMD (/usr/share/backup/backup-mysql.sh)

#!/bin/bash

B_USER=USER
B_HOST=HOST
DOMAIN=DOMAIN
B_TO_DIR=/home/users/$B_USER

SCRIPT_DIR=/usr/share/backup/backup-mysql.sh
PRIV_KEY=/usr/share/backup/id-rsa
DATETIME=`date +%d.%m.%Y_%H.%M`
DB_HOST=localhost
DB_USER=root
DB_NAME=db_name
DB_PASS=pass

        mysqldump -h $DB_HOST -u $DB_USER -p"$DB_PASS" $DB_NAME > "/usr/share/backup/"$DB_NAME"_"$DATETIME".sql"
        gzip $DB_NAME"_"$DATETIME".sql"
        scp -i id-rsa -o StrictHostKeyChecking=no "/usr/share/backup/"$DB_NAME"_"$DATETIME".sql.gz" $B_USER@$B_HOST:$B_TO_DIR
        rm -f "/usr/share/backup/"$DB_NAME"_"$DATETIME".sql.gz"

Ответ на: комментарий от AlexCones

Если надо быть увереным, что имя правильно интерпретируется, то «Blah ${VARIABLE}_&&&&Blah»

AlexCones ★★★
()
Ответ на: комментарий от AimCube

Попробуйте:

1. Выполнить скрипт в консоли от рута.
2. Попросить крон выполнять от имени пользователя. (su or whatever)

AlexCones ★★★
()

Перед gzip наверное нужно перейти в /usr/share/backup (cd /usr/share/backup)
scp -i id-rsa наверное на scp -i $PRIV_KEY

backbone ★★★★★
()

set -x
exec >/tmp/myscriptlog.$$ 2>&1

И читайте лог.

AITap ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.