1

Мой crontab:

PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=admins@boingoboingo.com
HOME=/
LD_LIBRARY_PATH=/usr/local/lib/
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7)  OR
#sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  *  command to be executed
05 01 * * * /root/backup_scripts/run_backups.sh
45 03 * * * /root/backup_scripts/new_scripts/run.sh> "/root/backup_scripts/new_scripts/$(date).run.log" 2>&1

Я действительно получаю электронные письма от демонов с заданием run_backups.sh

Я НЕ получаю электронные письма от демона с заданием run.sh, но я проверил, что он запускается

Вот электронная почта демона для run_backups.sh:

    from    Cron Daemon <root@aapsan01.boingoboingo.local>
to  admins@boingoboingo.com
date    Thu, Sep 30, 2010 at 2:22 AM
subject Cron <root@aapsan01> /root/backup_scripts/run_backups.sh
mailing list    <admins.boingoboingo.com> Filter messages from this mailing list
mailed-by   boingoboingo.com
hide details 2:22 AM (7 hours ago)
[09/30/10 01:05:01] mounting the usb drive
[09/30/10 01:05:09] usbdrive1 is ready.
[blah]blah, blah blah.
[09/30/10 06:41:51] finished syncing drives.
[09/30/10 06:41:53] usbdrive1 was disconnected.

2 ответа2

3

Электронные письма - это результат передачи данных в STDOUT или STDERR из вашей работы cron. Рассматриваемое задание cron было перенаправлено в файл журнала.

> "/root/backup_scripts/new_scripts/$(date).run.log" 2>&1
^ redirect STDOUT to file ^                          ^^^^ redirect STDERR to SDTOUT 
1

После того, как вы перенаправили стандартный вывод run.sh в /root/backup_scripts/new_scripts/$(date).run.log остается только вывод ошибок для перенаправления на стандартный вывод. Может ли быть так, что run.sh просто не выдает никаких ошибок?

Если вы хотите увидеть стандартный вывод run.sh используйте tee чтобы сохранить его в файл.

45 03 * * * /root/backup_scripts/new_scripts/run.sh | tee "/root/backup_scripts/new_scripts/$(date).run.log" 2>&1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .