Cron: Запуск скрипта из скрипта в cron
Добавлено: 2010-06-25 9:43:47
День добрый.
Возникла необходимость бекапить один сервис.
Сервис - сайт на томкате, который использует mysql базу и файлы (content).
Для того что б бакап был актуальный (база - content) делаю так:
- остановка tomcat
- бекап контента
- бекап mysql базы
- запуск tomcat
Бекапы пока создаю на localhost (временно) и по сетевой шаре smbfs (Windows).
Разделил бекап на 3 скрипта
1й - остановка томкат
- запуск скрипта бекапа контента 2й скрипт
- запуск скрипта бекапа mysql 3й скрипт
- запуск томкат
2й - mount_smbfs /folder
- бекап файлов со сжатием bz2 на localhost
- копирование архива по сетевой шаре
- umount /folder
3й - mount_smbfs /folder
- бекап mysql со сжатием bz2 на localhost
- бекап mysql со сжатием на сетевую шару
- umount /folder
Разделил специально, ибо иногда нужно делать бекапы руками и не всего, а отдельно либо файлов либо базы.
Если запускаю 1й скрипт из консоли, то все отрабатывает отлично. Архивы создаются и на localhost и на сетевой шаре.
Если 1й скрипт добавляю в cron то происходит следующее:
- останавливается томкат
- отрабатывает 2й скрипт (нормально создаются архивы)
- отрабатывает 3й скрипт но !!!
создается пустой архив базы mysql
- запускается томкат.
Если в 1м скрипте меняю порядок запуска скрипта 2 и 3 т.е. запускаю 3й потом 2й, то бекап mysql создается а с бекап файлов пустой.
Подскажите пожалуйста где я делаю не так и с чем данная проблема может быть связана.
Если необходимо выложу сами скрипты.
Возникла необходимость бекапить один сервис.
Сервис - сайт на томкате, который использует mysql базу и файлы (content).
Для того что б бакап был актуальный (база - content) делаю так:
- остановка tomcat
- бекап контента
- бекап mysql базы
- запуск tomcat
Бекапы пока создаю на localhost (временно) и по сетевой шаре smbfs (Windows).
Разделил бекап на 3 скрипта
1й - остановка томкат
- запуск скрипта бекапа контента 2й скрипт
- запуск скрипта бекапа mysql 3й скрипт
- запуск томкат
2й - mount_smbfs /folder
- бекап файлов со сжатием bz2 на localhost
- копирование архива по сетевой шаре
- umount /folder
3й - mount_smbfs /folder
- бекап mysql со сжатием bz2 на localhost
- бекап mysql со сжатием на сетевую шару
- umount /folder
Разделил специально, ибо иногда нужно делать бекапы руками и не всего, а отдельно либо файлов либо базы.
Если запускаю 1й скрипт из консоли, то все отрабатывает отлично. Архивы создаются и на localhost и на сетевой шаре.
Если 1й скрипт добавляю в cron то происходит следующее:
- останавливается томкат
- отрабатывает 2й скрипт (нормально создаются архивы)
- отрабатывает 3й скрипт но !!!
создается пустой архив базы mysql
- запускается томкат.
Если в 1м скрипте меняю порядок запуска скрипта 2 и 3 т.е. запускаю 3й потом 2й, то бекап mysql создается а с бекап файлов пустой.
Подскажите пожалуйста где я делаю не так и с чем данная проблема может быть связана.
Если необходимо выложу сами скрипты.