آشنایی با Cron Job یا Cron Task در لینوکس و ویندوز

آشنایی با Cron Job یا Cron Task در لینوکس و ویندوز

cron job چیست؟

cron job یک دستور لینوکس است که برای برنامه ریزی وظایفی که در آینده اجرا می شوند استفاده می شود. cron job معمولاً برای برنامه‌ریزی کاری که به صورت دوره‌ای اجرا می‌شود استفاده می‌شود – به عنوان مثال، برای ارسال اعلان هر روز صبح. Cron Job معمولا بر روی Server ها و Host های لینوکس مورد استفاده قرار می گیرد.

در ویندوز نیز با ویژگی ای با نام Cron Task یا  Scheduled Tasks مورد استفاده قرار گرفته و می توان از این ویژگی بهرمند شد.

همانطور که در بالا گفته شد Cron Job یک برنامه کاربردی است که به کاربران اجازه می دهد تا دستورات را برای برنامه ریزی وظایف به طور مکرر در یک زمان خاص وارد کنند. به وظایف برنامه ریزی شده در Cron Job یا Cron Task ، کرون(Cron) گفته می شود.

فایل cron یک فایل متنی ساده است که حاوی دستوراتی برای اجرای دوره ای در یک زمان مشخص شده است.فایل پیکربندی cron بدین شکل است:

/etc/crontab، که در دایرکتوری crontab /etc/cron.*/ قرار دارد.

برخی از اسکریپت‌ها، مانند Drupal و WHMCS ممکن است از شما بخواهند که cron jobs را برای انجام عملکردهای خاصی تنظیم کنید.

چرا باید از Cron Job استفاده کرد؟

چرا باید از Cron Job استفاده کرد؟

انجام مکرر یک کار ممکن است کاملاً طاقت فرسا باشد. زمان‌بندی با Cron به کاربران این امکان را می‌دهد تا وظایف یک سرور خصوصی مجازی یا هر سیستم‌عامل مشابه یونیکس را بصورت خودکار انجام دهند. این کار باعث صرفه جویی در وقت گران بهای کاربر می شود و به کاربران اجازه می دهد تا روی کارهای ضروری دیگر تمرکز کنند.
با cron jobs، کاربران می‌توانند تعمیر و نگهداری سیستم، نظارت بر فضای دیسک و برنامه‌ریزی پشتیبان‌گیری را صورت خودکار برنامه ریزی کنند. به دلیل این ویژگی ها، Cron Jobs برای رایانه هایی که بصورت 24/7 کار می کنند، مانند سرورها، عالی هستند.
در حالی که cron job ها عمدتا توسط مدیران سیستم استفاده می شوند. می توانند برای توسعه دهندگان وب نیز مفید باشند. برای مثال، به‌عنوان یک مدیر وب‌سایت، می‌توانید یک cron را برای پشتیبان‌گیری خودکار از سایت خود هر روز نیمه‌شب، دیگری برای بررسی لینک‌های خراب هر دوشنبه نیمه‌شب، و سومی برای پاک کردن کش سایت خود هر جمعه  ظهر تنظیم کنید.

محدودیت های Cron

به هرحال، مانند هر برنامه دیگری، cron محدودیت هایی دارد که باید قبل از استفاده از آن در نظر بگیرید:

کوتاه ترین فاصله بین کارها 60 ثانیه است. با cron، نمی توانید یک کار را هر 59 ثانیه یا کمتر تکرار کنید.

متمرکز تنها بر روی یک کامپیوتر؛ وظایف cron را نمی توان به چندین رایانه در یک شبکه توزیع کرد. بنابراین اگر رایانه ای که cron را اجرا می کند از کار بیفتد، وظایف برنامه ریزی شده اجرا نمی شوند و کارهای از دست رفته فقط به صورت دستی قابل اجرا خواهند بود.

مکانیسم Retry به صورت خودکار وجود ندارد، Cron به گونه ای طراحی شده است که در زمان های کاملاً مشخص اجرا شود. اگر یک کار با شکست مواجه شود، تا زمان برنامه ریزی شده بعدی دوباره اجرا نمی شود. این باعث می شود cron برای کارهای افزاینده نامناسب باشند.

با این محدودیت ها، cron یک راه حل عالی برای کارهای ساده ای است که در یک زمان خاص با فواصل منظم حداقل 60 ثانیه اجرا می شوند.

نحوه زمانبندی Cron Job

این آموزش به شما نشان می‌دهد که چگونه با وارد کردن دستورات در یک برنامه دربرگیرنده مانند Bash در لینوکس یا سایر سیستم‌عامل‌های مشابه یونیکس، وظایف cron را زمان‌بندی کنید.
قبل از انجام عملیات اصلی cron، ضروری است که فایل های پیکربندی مختلف cron job را بشناسید:
1.Corn Tab سیستم. از آن برای برنامه‌ریزی کارهای ضروری در سراسر سیستم استفاده می شود که فقط با ویژگی Root قابل تغییر هستند.
اگر می خواهید crontab سیستم را ویرایش کنید، مطمئن شوید که کاربر فعلی دارای قابلیت root است.

2. Cron tab کاربر. این فایل به کاربران اجازه می دهد تا وظایف cron را ایجاد و ویرایش کنند که فقط در سطح کاربر اعمال می شود.

کرون تب

اجرای Cron Job  بر روی سیستم عمل لینوکس

اجرای Cron Job  بر روی سیستم عمل لینوکس دارای قوانین و دستوراتی است که یادگیری شان  می تواند به شما این امکان را بدهد تا راحت تر یک Cron Job را تعریف کنید.

در لینوکس هر Cron Job از پنچ قسمت تشکیل شده است که به صورت * * * * *  مشخص می شوند. هر کدام از این قسمت ها (* ها ) نشان دهنده بخشی از زمان اجرا می باشند. برای مثال قسمت اول از سمت چپ نشانگر دقیقه می باشد یعنی در صورتی که Cron ساخته شده  به صورت 5 * * * *  تعریف شده باشد هر 5 دقیقه یکبار Cron Job دستور شما را اجرا میکند.

قسمت دوم به نشان دهنده مقدار ساعت میباشد که میتواند در بازه زمانی 0 الی 23 تنظیم شود. به عنوان مثال 5 13 * * * به این معنی می باشد که روزانه ساعت 13و 5 دقیقه Corn ساخته شده توسط شما، اجرا خواهد شد.

قسمت  سوم نشان دهنده تعداد روز های ماه می باشد که می تواند مقادیری مابین  1 الی 31 داشته  باشد.

ستاره چهارم نشان دهنده تعداد ماه از سال می باشد که می تواند مقادیری مابین  1 الی 12 داشته  باشد. قسمت آخر نیز نشان دهنده یک روز از هفته میباشد که از 0 الی 6 می تواند باشد. در قسمت  آخر  0 به منزله روز یکشنبه از هفته می باشد.

نمایش نحوه اجرای cron job در لینوکس
اجرای Cron Job  بر روی سیستم عمل لینوکس

جهت نمایش Cron job های تعریف شده موجود در لینوکس و همچنین اضافه کردن به انها می توان از کد دستوری زیر استفاده کرد:

crontab – e

مثال: user/local/Cpanel/scripts/cpbackup/ * * * 13 5

تنظیمات Cron Tasks در ویندوز

دستورالعمل تعریف cron Task (یا Scheduled Tasks) همانند تنظیم آن در لینوکس پیچیده نیست. جهت تنظیم آن ابتدا می بایست کلمه کلیدی  Task Scheduleder را در ویندوز جست و جو کرد تا پنجره مربوط به آن جهت اعمال تنظیمات  نمایش داده شود.

زمانی که یک Scheduled Tasks جدید را در ویندوز ایجاد می کنید می توانید با استفاده از گزینه Trigger تنظیمات مربوط به زمانندی و از گزینه Action برای وارد کردن مواردی که قصد دارید تا اجرا شوند استفاده نمایید.

نحوه تنظیم Cron Tasks در ویندوز

 

نحوه تنظیم Tasks
Scheduled Tasksتنظیمات

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.