Назад | Перейти на главную страницу

разбиение crontab на несколько файлов под FreeBSD

Используя FreeBSD 9, я хотел бы знать, как лучше всего разделить / etc / crontab на несколько файлов.

Например, я хотел бы поместить все задания, связанные с постфиксом, в /etc/cron.d/postfix, все задания, связанные с logrotate, в /etc/cron.d/logrotate и так далее.

Конечно, я мог бы использовать периодические, но кажется, что все задания будут выполняться примерно в одно и то же время.

Любая идея?

Согласно man 1 cron, он ищет / var / cron / tabs / <usernames> и / etc / crontab.

Изменить 1: Причины, по которым я могу попытаться сделать это, как указано в ответе voretaq7.

Обратите внимание, что в /etc/rc.conf и / usr / local / etc / sudoers уже есть эта функция, поэтому мне было интересно, есть ли «способ FreeBSD» сделать это для запланированных заданий.

Cron FreeBSD - это традиционный cron Vixie - он не поддерживает то, о чем вы просите.

Честно говоря, я не понимаю, зачем вам это нужно: зачем вам разбрасывать ваш crontab на кучу файлов, где вы не можете получить четкую картину того, что и когда работает?
Я всегда считал, что традиционный crontab, упорядоченный по периодичности / частоте (ежечасно, ежедневно, еженедельно, ежемесячно, ежегодно), очень легко читать и легко обдумывать, добавляя что-то новое в расписание.

Если вы хотите разбить ваш crontab на функциональные единицы, вы тоже можете это сделать - просто создайте блоки, разделенные пробелами и комментариями.


Если этого недостаточно для вашего варианта использования, и вы действительно хотите структуру cron в стиле Linux с cron.d каталог и подфайлы, которые вы можете получить: просто установите anacron из дерева портов (sysutils/anacron) и настройте как хотите.

Убедись в задокументируйте, что вы сделали - За свою карьеру я встречал множество систем FreeBSD, и я никогда не встречал систем, в которых не использовался бы стандартный Vixie cron. Если вы создаете среду, которая является исключением из обычного способа ведения дел, вы хотите, чтобы все знали, почему вы ее изменили, и как им следует обращаться с системами.

На самом деле я предпочитаю периодические скрипты над cronjobs именно потому, что периодический выполняет все скрипты последовательно. Вы также можете добавить больше периодических шаблонов, например поместить скрипты в каталог /etc/periodic/8hourly и добавьте запись в crontab 0 */8 * * * periodic 8hourly запустить их.

Для подсистем с разными идентификаторами пользователей вы можете добавить файлы crontab для конкретных пользователей (с crontab -u $user -e, файлы попадают в /var/cron/tabs/$user) - но ИМХО это менее ремонтопригодно, чем один центральный файл.