Есть подозрение, что cron не запускает команды.
В /etc/crontab правила есть, а команда "crontab -u root -l" говорит "no crontab for root".
Так не должно быть?
cron не работает
Модератор: arachnid
- Bizdelnick
- Модератор
- Сообщения: 20793
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: cron не работает
Всё правильно. /etc/crontab — это не crontab рута, и синтаксис у него отличается от пользовательских crontab'ов: в нём должно быть дополнительное поле, где указывается пользователь, от имени которого запускается команда.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: cron не работает
Bizdelnick писал(а): ↑15.07.2016 12:46Всё правильно. /etc/crontab — это не crontab рута, и синтаксис у него отличается от пользовательских crontab'ов: в нём должно быть дополнительное поле, где указывается пользователь, от имени которого запускается команда.
Я не про пользовательский, а про рутовый кронтаб спрашивал. Или нет разницы?
Так собственно у меня вопрос, будет ли работать, если "crontab -u root -l" ничего не показывает, а в /etc/crontab следующее:
Код: Выделить всё
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
*/5 * * * * root /usr/libexec/atrun
*/15 * * * * root /usr/local/bin/python /usr/utm/main.py
*/11 * * * * operator /usr/libexec/save-entropy
0 * * * * root newsyslog
1 3 * * * root periodic daily
15 4 * * 6 root periodic weekly
30 5 1 * * root periodic monthly
1,31 0-5 * * * root adjkerntz -a
Re: cron не работает
Все пользовательские кроны (включая рутовый) находятся в /var/spool/cron/crontabs/{username}. именно отсюда черпает информацию crontab -l
/etc/crontab -- своего рода общесистемный кронтаб.
Ровно это и написано в документации:
Код: Выделить всё
crontab is the program used to install, deinstall or list the tables
used to drive the cron(8) daemon in Vixie Cron. Each user can have
their own crontab, and though these are files in
/var/spool/cron/crontabs, they are not intended to be edited directly.
// man crontab
Код: Выделить всё
$ cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
<..>
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Re: cron не работает
SLEDopit писал(а): ↑18.07.2016 12:10Все пользовательские кроны (включая рутовый) находятся в /var/spool/cron/crontabs/{username}. именно отсюда черпает информацию crontab -l
/etc/crontab -- своего рода общесистемный кронтаб.
Ровно это и написано в документации:
Код: Выделить всё
crontab is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron. Each user can have their own crontab, and though these are files in /var/spool/cron/crontabs, they are not intended to be edited directly. // man crontab
Код: Выделить всё
$ cat /etc/crontab # /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do. <..>
Только в *BSD они лежат в /var/cron/tabs. Как и написано в
Код: Выделить всё
man crontab
...
FILES
/var/cron/allow List of users allowed to use crontab
/var/cron/deny List of users prohibited from using crontab
/var/cron/tabs Directory for personal crontab files