Cronjob
مدیریت سرور

Cronjob چیست؟ زمان‌بندی خودکار وظایف در سیستم‌های لینوکس

  • 1403/12/27

Cronjob چیست؟

Cronjob (یا به‌طور ساده "Cron") سیستمی برای زمان‌بندی خودکار اجرای دستورات و اسکریپت‌ها در سیستم‌عامل‌های لینوکس/یونیکس است. این ابزار بر اساس فایل‌هایی به نام Crontab کار می‌کند که در آن زمان‌بندی و فرمان‌های موردنظر تعریف می‌شوند.

به بیان ساده، Cronjob مانند یک برنامه‌ریز خودکار است که در زمان‌های مشخص، وظایف تعریف‌شده را بدون نیاز به دخالت انسان اجرا می‌کند.

ساختار یک Cronjob چگونه است؟

یک دستور cron معمولاً از ۶ بخش تشکیل شده است:

*  *  *  *  *  command_to_run
│  │  │  │  │
│  │  │  │  └── روزهای هفته (0 تا 6، از یکشنبه تا شنبه)
│  │  │  └──── ماه (1 تا 12)
│  │  └────── روز ماه (1 تا 31)
│  └──────── ساعت (0 تا 23)
└────────── دقیقه (0 تا 59)
مثال

30 2 * * * /home/user/backup.sh
این دستور هر روز ساعت ۲:۳۰ بامداد اسکریپت backup.sh را اجرا می‌کند.

چگونه یک Cronjob ایجاد کنیم؟

برای اضافه کردن یک cronjob جدید، کافی است دستور زیر را در ترمینال وارد کنید:

crontab -e

سپس می‌توانید دستورات زمان‌بندی خود را وارد کرده و فایل را ذخیره کنید.

برای مشاهده لیست وظایف فعال:

crontab -l

مونه‌های کاربردی Cronjob

 

زمان‌بندیتوضیحنمونه دستور
هر ۵ دقیقهاجرای مکرر هر ۵ دقیقه*/5 * * * *
هر روز ساعت ۶ عصراجرای روزانه0 18 * * *
هر دوشنبهاجرای هفتگی0 10 * * 1
اول هر ماهاجرای ماهانه0 0 1 * *

نکات مهم در استفاده از Cronjob

  • مسیرهای کامل فایل‌ها و دستورات را وارد کنید.
  • خروجی وظایف cron را می‌توان به یک فایل لاگ هدایت کرد.
  • برای اجرای اسکریپت‌ها، حتماً مجوز اجرایی داشته باشند (chmod +x script.sh).
  • بررسی محیط اجرای cron مهم است، زیرا محیط متغیرها مانند محیط ترمینال معمولی نیست.

Cronjob یک ابزار ساده اما قدرتمند برای اتوماسیون وظایف تکراری است. با استفاده از آن می‌توانید بهره‌وری سرور خود را افزایش داده و از بروز خطاهای انسانی جلوگیری کنید. اگر با لینوکس یا مدیریت سرور سر و کار دارید، یادگیری و استفاده از cron یکی از مهارت‌های کلیدی شما خواهد بود.

 

دیدگاه
نوشتن یک دیدگاه

آدرس ایمیل شما منتشر نخواهد شد، فیلدهای الزامی علامت گذاری شده است*.

عضویت در خبرنامه

رایگان ثبت نام کنید و اولین نفری باشید که از پست های جدید مطلع می شوید.