Jump to content
Калькуляторы

Почему может не работать cron половина заданий

Есть задания:

 

*    *    *    *    *    root    /usr/local/bin/php-cgi /usr/local/etc/swctrl.php
*    *    *    *    *    root    /usr/local/bin/php-cgi /usr/local/etc/auto.php
40    1    *    *    *    root    /usr/local/bin/mysqldump --default-character-set=cp1251 -Qucmd -u tanker database | gzip -9 > /usr/home/`date "+%Y%m%d"`.gz
15    4    *    *    *    root    /usr/local/bin/php-cgi /usr/local/etc/dumpman.php

 

Все работают, кроме третьего. В логах крона тихо. Куда нужно посмотреть, чтобы продиагностировать проблему неработоспособности третьего задания?

Если всю строку задания выполнить в конкольке - всё выполняется отлично. Выполняется в течении примерно 2-х минут.

Share this post


Link to post
Share on other sites

пусто :(

чёрт, был не запущен сислог, простите, буду искать проблему.

Edited by terrible

Share this post


Link to post
Share on other sites

Было тоже самое, когда пытался использовать `date что-нибудь`, просто написал скрипт запуска из одной(или, быть может, пары строчек).

Share this post


Link to post
Share on other sites
s.lobanov, спасибо большое за подсказку, действительно, если команду запихнуть в скрипт и выполнить - все работает. Актуально только для date. Не знал такого нюанса.

Share this post


Link to post
Share on other sites

Можно конечно копать дальше, проблема, предположительно, связана с переменным окружением, которое, как правило, в кроне несколько отличное, по сравнению с тем, которое используется, зайдя на сервер по ssh. Но что-то лень такой фигнёй заниматься :)

Share this post


Link to post
Share on other sites

а date вызванная из скрипта вызванного из cron какое то другое окружение получит, чем если ее напрямую из cron вызвать?

Share this post


Link to post
Share on other sites

больше похоже на парсинг аргументов команды кроном, + создание пайп, наверно кавычек нужно много,

поетому "<интерпретатор> <скрипт>" ка ка*** выглядит попроще

 

хмм, вот такое работает давно у меня...

5 5 * * *       /usr/local/bin/mysqldump --ignore-table=radius.radacct --ignore-table=radius.radpostauth --ignore-table=radius.totacct --skip-extended-insert radius > /home/backup/radius.`date +\%s`.sql

Edited by andriko

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this