Чи виконує RHEL / CentOS всі файли cronjob під /etc/cron.d/*, або лише деякі з них?


19

Це система Red Hat Enterprise Linux 5 (RHEL). Ми управляємо цією системою за допомогою CFengine.

У нас є кілька кронштейнів, які працюють вдвічі частіше, ніж зазвичай. Я перевірив cronjobs в /etc/cron.d/і ця директорія містить фактичний скрипт, який називається host-backup, а також містить файл резервної копії cfengine, який називається host-backup.cfsavedтак:

/etc/cron.d/host-backup
/etc/cron.d/host-backup.cfsaved

Чи виконує ця операційна система всі файли на /etc/cron.d/* , або виконує лише ті файли, які відповідають певній схемі. Чи можу я це налаштувати, і де це визначено?

Я не можу знайти цю відповідь в документації RHEL або CentOS.

Відповіді:


20

(Якщо ви платите за підтримку Red Hat, вам слід задати їм такі запитання. Це саме те, за що ви платите!)

Від на RHEL5 crontab(5)людини сторінці :

Якщо він існує, /etc/cron.d/каталог аналізується як каталог col spool, за винятком того, що файли в ньому не є специфічними для користувача і тому читаються /etc/crontabсинтаксисом (користувач вказано явно в 6-му стовпці).

(Чи є простіший спосіб читати керівні сторінки RHEL, не маючи доступу до нього? Принаймні, таким чином я міг бачити, що цей параграф є частиною патчу Red Hat, тому це не є стандартною функцією Vixie Cron 4.1.)

Дивлячись на джерело, я бачу , що такі файли пропускаються: .*, #*, *~. *.rpmnew, *.rpmorig, *.rpmsave. Так, так, ваші *.cfsavedфайли читаються на додаток до оригіналів.


Привіт Giles, дякую, що я знайшов саме такий синтаксис від vixie-cron-4.1-77.el5_4.1.src.rpm. За іронією долі, цей текст НЕ входить до жодної сторінки man для cron і не входить до жодного текстового файлу в системі. Я не впевнений, чому це так, але це тема для іншого обговорення.
Стефан Ласєвський

І я розмістив подальше запитання на unix.stackexchange.com/questions/4815
Stefan Lasiewski

@Giles: Ви виграєте. Джерело RedHat повинен містити остаточну відповідь. У цьому випадку (джерело, схоже, відрізняється від встановлених файлів) [unix.stackexchange.com/questions/4815], але це інша тема.
Стефан Ласєвський

6

Ось відповідь від підтримки RedHat:

Будь ласка, повідомляйте, що всі файли в каталозі cron.d перевіряються та виконуються, це в основному розширення файлу / etc / crontab (тобто; такий же ефект, якщо ви додаєте записи до файлу / etc / crontab)

Отже, щоб відповісти на моє запитання "Чи виконує ця операційна система всі файли за адресою /etc/cron.d/*, чи виконує лише ті файли, які відповідають певній схемі. Чи можу я налаштувати це, і де це визначено?"

Всі файли під /etc/cron.d/* виконуються (Хоча, здається, певні розширення файлів, такі як .rpmsave, * ~ тощо, ігноруються, згідно документації у вихідних файлах). Налаштувати це неможливо через файл конфігурації. Налаштування цього можливо, можливо, якщо джерело перекомпільовано. Така поведінка згадується в документації, що міститься у джерелі, але не відображається на будь-якій сторінці керівництва чи підручника, яку я можу знайти.


5

Я думаю, що у вас виникли труднощі з пошуку відповіді в тому, що це не питання, що стосується Red Hat Проблема, яку ви бачите, є частиною стандартного функціоналуcron - кожен файл у визначеному вами каталозі автоматично розглядається як окреме завдання .

Отже, коротка відповідь на ваше запитання "так, всі файли виконуються". Думаю, це не те, що можна налаштувати.


2
Існують різні реалізації cron. Debian і Ubuntu постачаються з Vixie Cron (3.0), а обробка cron.dописана на її довідковій сторінці . RHEL поставляється з ISC cron 4.1 (виделкою того ж проекту), а сторінка man (принаймні на CentOS ) не згадує cron.d.
Жил 'ТАК - перестань бути злим'

1
@Gilles: Дякую за покажчики. Я використовую Fedora, у якого встановлено Cronie (також вилка Vixie / ISC Cron). Сторінка man згадує /etc/cron.dяк один із шляхів пошуку. Прошу вибачення, якщо в моїй відповіді не було достатньо деталей - я абсолютно впевнений, що це має стосуватися і Red Hat. Будь ласка, дайте мені знати, якщо це не так
mlschechter

1
Після вивчення цього питання саме для Red Hat питання (див. Мою відповідь). Це настільки специфічно для Red Hat, що навіть CentOS відрізняється, і Fedora, мабуть, відрізняється (але я не перевіряв).
Жил 'ТАК - перестань бути злим'

1
@Gilles - вибачте за затримку у відповіді. Як і для Red Hat EL 5 , Red Hat використовує віксі-крон. RHEL 6 використовує кроні. Переглянувши документацію RHEL 5, я думаю, що це підтверджує мій оригінальний (якщо невірно поставлений) висновок. Ще раз дякую за всю допомогу в копанні за це.
mlschechter
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.