LINUX.ORG.RU
ФорумAdmin

бекапы - периодически неполное создание по крону

 , ,


0

3

есть скрипт, объединяющий создание бекапов разных видов (mysql, системные файлы, бекап файлов доменов и т.п.).

#!/bin/sh
/root/backup-mysql.sh #бекап №1
/root/backup-h-domains.sh #бекап №2
/root/backup.sh #бекап №3

если запускать вручную - все делается замечательно.
но из под крона:
1 23 * * * /root/backup-all.sh

периодически создается некорректно, а точнее, например, если конкретные скрипты записаны в порядке, как указано выше, не полностью создается бекап №2.
Если поставить его первым - создаться полностью, но могут заглючить бекап №1 и №3.

Из-за чего это может быть?

Большое спасибо за помощь!

p.s. если надо - приведу код самих скриптов, но думаю, что проблема не в них.



Последнее исправление: scu (всего исправлений: 1)

Из-за чего это может быть?

как обычно, из за переменных окружения. man crond читать уже не модно? ну и сидите в жопе.

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

насколько я понимаю, если бы была проблема с переменными окружения, не работали бы скрипты полностью.

здесь проблема другая - они «недорабатывают», т.е. например в цикле обрабатываются папки (например базы mysql). Пи запуске из крона - часть может сделаться, часть - нет. То же самое при архивировании обычных папок (файлов).

scu
() автор топика
Ответ на: комментарий от scu

какие нах «папки»?

у меня всё работает, если у вас не работает - читайте логи.

hint добавьте >>/var/log/тупойскрипт.log

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

часть может сделаться, часть - нет

логируйте вывод скрипта, как уже подсказали выше

man bash (на предмет опции -x)
man cron

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

здесь проблема другая - они «недорабатывают», т.е. например в цикле обрабатываются папки (например базы mysql)

а) для старых версий libc6 есть лимит на количество аргументов, которые могут быть переданы программе.

б) цикл может быть прерван по какой-то причине.

Как уже сказали, собирай вывод скрипта, включай трассировку ( set -x )

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

а) для старых версий libc6 есть лимит на количество аргументов, которые могут быть переданы программе.
==========================
если при ручном запуске все отрабатывает, по идеи причина не в библиотеке?

попробую поставить логизирование, чтобы посмотреть из-за чего прерывается.

спасибо

scu
() автор топика
Ответ на: комментарий от scu

Советую перепроверить все ссылки и выставить их значения на абсолютные, а не относительные.

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