ANACRONTAB(5) File Formats ANACRONTAB(5)

anacrontab - فایل پیکربندی برای Anacron

فایل پیکربندی /etc/anacrontab وظایف تحت کنترل anacron(8) را شرح می‌دهد. این فایل می‌تواند شامل سه نوع خط باشد: خطوط توصیف وظیفه (job-description)، انتساب متغیرهای محیطی، یا خطوط خالی.

خطوط توصیف وظیفه می‌توانند قالب زیر را داشته باشند:


period in days delay in minutes job-identifier command

متغیر period in days (دوره بر حسب روز) بسامد اجرای یک وظیفه را بر حسب روز مشخص می‌کند. این متغیر می‌تواند با یک عدد صحیح یا یک ماکرو (@daily، @weekly یا @monthly) نشان داده شود؛ که در آن @daily معادل مقدار عدد صحیح ۱، @weekly معادل ۷، و @monthly مشخص می‌کند که وظیفه، صرف‌نظر از طول ماه، ماهی یک‌بار اجرا شود.

متغیر delay in minutes (تاخیر بر حسب دقیقه) تعداد دقایقی را مشخص می‌کند که anacron، در صورت لزوم، پیش از اجرای یک وظیفه منتظر می‌ماند. این متغیر با یک عدد صحیح نشان داده می‌شود که در آن 0 به معنای بدون تاخیر است.

متغیر job-identifier (شناسه وظیفه) یک نام یکتا برای وظیفه مشخص می‌کند که در فایل‌های گزارش (لاگ) استفاده می‌شود.

متغیر command دستوری را که باید اجرا شود مشخص می‌کند. این دستور می‌تواند دستوری مانند ls /proc >> /tmp/proc یا دستوری برای اجرای یک اسکریپت سفارشی باشد.

خطوط انتساب متغیرهای محیطی می‌توانند قالب زیر را داشته باشند:


VAR=VALUE

هرگونه فاصله در اطراف VAR حذف می‌شود. هیچ فاصله‌ای در اطراف VALUE مجاز نیست (مگر اینکه بخواهید بخشی از مقدار باشد). انتساب مشخص‌شده از خط بعدی تا پایان فایل، یا تا انتساب بعدی همان متغیر اعمال می‌شود.

متغیر START_HOURS_RANGE بازه‌ای زمانی (بر حسب ساعت) را تعریف می‌کند که وظایف زمان‌بندی‌شده مجاز به اجرا در آن هستند. در صورتی که این بازه زمانی از دست برود (برای مثال به دلیل خاموش بودن سیستم)، وظایف زمان‌بندی‌شده در آن روز اجرا نخواهند شد.

متغیر RANDOM_DELAY حداکثر تعداد دقایقی را مشخص می‌کند که به متغیر تاخیر بر حسب دقیقه (delay in minutes) تعیین‌شده برای هر وظیفه افزوده خواهد شد. بنابراین، تنظیم RANDOM_DELAY روی ۱۲ به صورت تصادفی بین ۰ تا ۱۲ دقیقه به تاخیر هر وظیفه در آن anacrontab مشخص اضافه می‌کند. هنگامی که روی 0 تنظیم شود، هیچ تاخیر تصادفی‌ای اضافه نخواهد شد.

اگر MAILTO تعریف شده (و غیرخالی) باشد، ایمیل به نشانی مشخص‌شده ارسال می‌شود؛ در غیر این صورت، از کاربر سیستم استفاده می‌شود.

اگر MAILFROM تعریف شده (و غیرخالی) باشد، به عنوان نشانی فرستنده پاکت (envelope sender) استفاده می‌شود؛ در غیر این صورت، از کاربر سیستم استفاده می‌شود.

(نکته: هر دو متغیر MAILFROM و MAILTO بسط داده می‌شوند، بنابراین مقداردهی آن‌ها مانند مثال زیر همان‌طور که انتظار می‌رود عمل می‌کند: MAILFROM=cron-$USER@cron.com که در آن $USER با کاربر سیستم جایگزین می‌شود).

اگر NO_MAIL_OUTPUT تعریف شده (و غیرخالی) باشد، توصیف‌کننده‌های خروجی استاندارد و خطای فرایندهای وظیفه تغییر مسیر داده نشده و با ایمیل فرستاده نمی‌شوند.

خطوط خالی عبارتند از خطوط سفید، خطوطی که فقط حاوی نویسه‌های فاصله خالی هستند، یا خطوطی حاوی فاصله‌های خالی که پس از آن‌ها یک کاراکتر «#» و یک توضیح (کامنت) دلخواه قرار دارد.

می‌توانید با قرار دادن یک «\» در انتهای خط، آن را در خط بعدی ادامه دهید.

در صورتی که می‌خواهید Anacron را غیرفعال کنید، خطی حاوی 0anacron (که نام اسکریپت اجراکننده Anacron است) را به فایل /etc/cron.hourly/jobs.deny اضافه کنید.

این مثال نحوه راه‌اندازی یک وظیفه Anacron را نشان می‌دهد که از نظر عملکرد مشابه /etc/crontab است و تمام وظایف معمول را فقط بین ساعت ۶:۰۰ تا ۸:۰۰ شروع می‌کند. یک RANDOM_DELAY که حداکثر می‌تواند ۳۰ دقیقه باشد مشخص شده است. وظایف به صورت متوالی در یک صف اجرا می‌شوند که در آن هر وظیفه تنها پس از پایان وظیفه قبلی آغاز می‌شود.

# متغیرهای محیطی
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
RANDOM_DELAY=30
# وظایف Anacron بین ساعت ۶ تا ۸ صبح شروع خواهند شد.
START_HOURS_RANGE=6-8
# تاخیر ۵ دقیقه + RANDOM_DELAY برای cron.daily خواهد بود
1		5	cron.daily		nice run-parts /etc/cron.daily
7		0	cron.weekly		nice run-parts /etc/cron.weekly
@monthly	0	cron.monthly		nice run-parts /etc/cron.monthly

anacron(8), crontab(1)

فایل README مربوط به Anacron.

Itai Tzur

در حال حاضر توسط Pascal Hakim نگه‌داری می‌شود.

برای فدورا، توسط Marcela Mašláňová نگه‌داری می‌شود.

2012-11-22 cronie