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

Было тоже самое, когда пытался использовать `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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.