Я должен использовать cron.hourly или crontab?

Кажется, что все предложения для использования/планирования awstats через crontab, как таковой: 0 * * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=mysite -update >/dev/null (работающий awstats каждый час).

Однако, если я проверяю crontab -l, это говорит, что crontab пуст для моего пользователя.

Однако, когда я проверяю /etc/cron.hourly, У меня есть awstats файл со следующим:

#!/bin/bash
exec /usr/share/awstats/tools/awstats_updateall.pl now         -configdir="/etc/awstats"           -awstatsprog="/usr/share/awstats/wwwroot/cgi-bin/awstats.pl" >/dev/null
exit 0

Только для сообщения мой awstats обновляется прекрасный, он создает свои отчеты, и все хорошо.

Выполнение команды crontab создают запись в указанной папке крона? (т.е. cron.hourly или cron.daily, и т.д.)? Или действительно ли они не связаны? Если они связаны, почему мой пользователь без crontab записи?

8
задан 23 September 2014 в 00:52
1 ответ

crontab -e - традиционный способ создания crontab. Я считаю его неудобным и старомодным, но люди все еще его используют.

/etc/cron.hourly , включая cron.daily , cron.weekly & /etc/cron.d и т. Д. Предоставляются большинством дистрибутивов Linux, потому что они удобны и хорошо работают с инструментами автоматизации, такими как менеджеры пакетов и системы управления конфигурациями. Диспетчеру пакетов очень легко поместить файл в /etc/cron.hourly/foo по сравнению с написанием сценария для редактирования существующего crontab. Программное редактирование файла с помощью диспетчера пакетов может привести к повреждению файла, добавлению повторяющихся записей, удалению неправильной строки, ошибкам в комментариях и т.д. while.

Создает ли запуск команды crontab запись в указанной папке cron?

Нет. /etc/cron.daily/foo создается менеджером пакетов или вручную. Он не создается при запуске команды crontab. crontab -e создаст crontab под / var , например / var / spool / cron / root .

Я предпочитаю / и т. Д. /cron.$period/foo и /etc/cron.d , потому что эта иерархия аккуратная и организованная, и ее легко написать сценарий для моей системы управления конфигурацией. / etc / crontab также доступен в Linux, но он немного монолитен и его сложно редактировать программно. Такие системы, как FreeBSD, поддерживают / etc / crontab и / etc / periodical .

12
ответ дан 2 December 2019 в 22:54

Теги

Похожие вопросы