У меня была эта проблема, и она обычно связана с переменными окружения cron. Поскольку cron не является пользователем оболочки, он имеет переменные окружения, отличные от пользователей консоли. Вы можете сравнить, запустив что-то подобное с cron и вашим пользователем, который работает:
usr/bin/env | sort > /tmp/cronEnv.out
Это позволит вам сравнить оба выхода. Если я готов поспорить, это должно быть что-то вроде часовых поясов, языка или двоичных файлов, которые он не может найти из-за отличия PATH.
Пожалуйста, разместите журнал cron здесь также на всякий случай. в зависимости от дристро их можно найти здесь:
/var/log/cron //could also be syslog or something else.
Здесь есть статья об этом .
Не имеет отношения к вашему вопросу напрямую: я также запрограммировал скрипт резервного копирования для Mysql и других вещей, все еще в стадии разработки, но может работать для вашей среды, только около 50 или 60 серверов, использующих его до сих пор, но вы можете попробовать и пинговать меня, если понадобится помощь.
Помимо этого могут быть и другие проблемы, но если скрипт работает, то env по какой-то причине должен отличаться.