לדלג לתוכן

מבוא ל-Cron בלינוקס

מהו Cron?

  • השירות cron הוא שירות בלינוקס המאפשר לתזמן ולהפעיל פקודות או סקריפטים בזמן מוגדר מראש. זהו אחד הכלים החשובים ביותר לאוטומציה של משימות במערכת.
  • השירות cron פועל כתהליך רקע שנקרא crond ומריץ פקודות בהתאם לתזמונים שמוגדרים בקובץ הנקרא crontab. (בעתיד נסביר יותר למשמעות המילה "שירות" בלינוקס.)

מבנה של crontab

קובץ crontab מכיל שורות המגדירות משימות לביצוע. כל שורה בנויה מ-5 שדות שמציינים את זמן ההרצה, ואחריהם הפקודה לביצוע:

* * * * * command_to_execute
- - - - -
| | | | |
| | | | ----- יום בשבוע (0 - ראשון, 6 - שבת)
| | | ------- חודש (1-12)
| | -------- יום בחודש (1-31)
| ---------- שעה (0-23)
------------ דקות (0-59)

דוגמאות ל-crontab

  1. הפעלת סקריפט כל דקה:
* * * * * /home/user/script.sh
  1. הרצת גיבוי כל יום בשעה 2:30 בלילה:
30 2 * * * /home/user/backup.sh
  1. ניקוי קבצים ישנים כל יום ראשון ב-4 לפנות בוקר:
0 4 * * 0 rm -rf /tmp/*
  1. שליחת דוא"ל כל ראשון לחודש ב-8 בבוקר:
0 8 1 * * echo "דו"ח חודשי" | mail -s "דו"ח" user@example.com
  1. הרצת סקריפט פעם בשעה בדיוק:
0 * * * * /home/user/hourly_script.sh
  1. עדכון מערכת כל יום ראשון בשעה 3 לפנות בוקר:
0 3 * * 0 sudo apt update && sudo apt upgrade -y
  1. הרצת סקריפט כל 15 דקות:
*/15 * * * * /home/user/quarter_hour_script.sh

ניהול crontab

  • עריכת ה-crontab של המשתמש:
crontab -e
  • הצגת ה-crontab של המשתמש:
crontab -l
  • מחיקת כל ה-crontab של המשתמש:
crontab -r

סיכום

כלי הcron הוא כלי חזק לאוטומציה של משימות בלינוקס. השימוש בו מאפשר לחסוך זמן ולהפחית טעויות אנוש. הבנה של מבנה ה-crontab תאפשר לך להשתמש בו בצורה מיטבית ולנהל משימות מתוזמנות בקלות.