У меня есть кронтаб:
* * * * * /home/ipa/web/backup.sh > /dev/null 2>&1
(Нет, он не запускается каждую минуту, просто тестируется здесь)
В backup.sh есть это:
#!/usr/bin/env ш
sqlite3 /home/ipa/web/ipa_django/mysite/db.sqlite3 ".backup 'backup_file.sqlite3'"
src="/home/ipa/web/backup_file.sqlite3"
пусть секунды=$(дата +%H)*3600+$(дата +%M)*60+$(дата +%S)
эхо $ секунд
имя файла="db.sqlite3"
эхо $filename.$секунд
dest="/home/ipa/web/db_backups/"$filename.$seconds
cp $ источник $ назначения
cd /home/ipa/web/db_backups
tar -cvzf ipadbbackup.tar.gz $filename.$seconds
компакт-диск /дом/ipa/веб/
cp /home/ipa/web/db_backups/ipadbbackup.tar.gz ipadbbackup.tar.gz
rm /home/ipa/web/db_backups/$filename.$seconds
рм /home/ipa/web/db_backups/ipadbbackup.tar.gz
#rm "$srcfile"
/usr/bin/bash start-app.sh;
echo "Выполняется резервное копирование электронной почты"
python2.7 backup_via_email.py
рм ipadbbackup.tar.gz
Идея заключается в том, что я копирую базу данных в резервную область, архивирую ее, копирую туда, где ее может найти другой файл .py, и отправляю по электронной почте в качестве резервной копии.
Проблема в:
Если я запускаю этот скрипт оттуда, где он живет:
/главная/ипа/веб/
с ./backup.sh
Он отлично работает, я получаю файл в моей электронной почте, отлично работает:
db.sqlite3.77627
или что нет ... проблема в том, что когда он запускается как cron, файл не завершен, а имя файла:
БД.sqlite3.
Я не могу понять, что насчет того, что он работает как cron, что приводит к его сбою? Файл в таре тоже на 2.1к меньше? Так что не знаю, что происходит... даже не знаю, где искать.