بازگشت به وبلاگ
مه 23, 2026راهنماها

نحوه راه اندازی Cron Jobs در سرور لینوکس

سینتکس cron، ویرایش crontab، مثال‌های معمول زمان‌بندی و ثبت‌نام برای کارهای خودکار در VPS را بیاموزید.

نحوه راه اندازی Cron Jobs در سرور لینوکس

کرون زمان‌بندی استاندارد لینوکس برای اجرای اسکریپت‌ها و دستورات در زمان‌های ثابت است - پشتیبان‌گیری، پاک کردن حافظه پنهان، بررسی گواهی‌ها و موارد دیگر. این راهنما نحوه استفاده از cron را در سرور Hiddence نشان می دهد.

نحو Cron

هر خط دارای پنج فیلد زمانی است که با دستور زیر همراه است:

bash
# ┌──────── minute (0-59)
# │ ┌────── hour (0-23)
# │ │ ┌──── day of month (1-31)
# │ │ │ ┌── month (1-12)
# │ │ │ │ ┌─ day of week (0-7, 0 and 7 = Sunday)
# │ │ │ │ │
# * * * * * command

# Every day at 3:00 AM:
0 3 * * * /usr/local/bin/backup.sh

# Every 15 minutes:
*/15 * * * * /usr/local/bin/check.sh

crontab را ویرایش کنید

از crontab -e برای کاربر فعلی استفاده کنید. برای کارهای ریشه (بیشتر کارهای سیستمی)، از sudo استفاده کنید:

bash
# Edit your user crontab
crontab -e

# Edit root crontab
sudo crontab -e

# List current jobs
crontab -l
sudo crontab -l

نمونه های رایج

  • 0 2 * * * — پشتیبان گیری روزانه در ساعت 2:00 بامداد
  • 0 */6 * * * - هر 6 ساعت
  • 0 0 * * 0 - هر یکشنبه در نیمه شب
  • */5 * * * * - هر 5 دقیقه (با دقت استفاده کنید)
  • @reboot /path/script.sh - یک بار پس از راه اندازی مجدد سرور اجرا شود
  • @daily /usr/bin/certbot تمدید --quiet — بررسی روزانه Certbot

ثبت و اشکال زدایی

خروجی را به یک فایل گزارش تغییر مسیر دهید تا بدانید که آیا یک کار شکست خورده است:

bash
0 3 * * * /usr/local/bin/backup.sh >> /var/log/backup-cron.log 2>&1

# View cron execution in system log:
grep CRON /var/log/syslog   # Ubuntu
grep CRON /var/log/cron      # CentOS

نکات

  • از مسیرهای مطلق در دستورات cron استفاده کنید
  • قبل از افزودن به crontab اسکریپت ها را به صورت دستی تست کنید
  • MAILTO=your@email.com را در crontab برای ایمیل های خطا تنظیم کنید (اگر ایمیل پیکربندی شده باشد)
  • تایمرهای systemd را برای وابستگی های پیچیده به سیستم های مدرن ترجیح دهید
  • کارهای سنگین را هر دقیقه اجرا نکنید - می تواند VPS را بیش از حد بارگذاری کند