כיצד לערוך את קובץ Linux Crontab כדי לתזמן עבודות
מה צריך לדעת
- הצג את התוכן של crontab עם: crontab -l
- ערוך את הקרונטאב עם: crontab -e
- התזמון עובד עם: דַקָה, שָׁעָה, יום בחודש, חוֹדֶשׁ, יום בשבוע. השתמש בכוכבית (*) להפעיל cron כל יום, שעה וכו'.
מאמר זה מסביר כיצד להשתמש ב-cron, שהוא דמון בלינוקס המריץ תהליכים במרווחי זמן קבועים. הוא בודק בתיקיות מסוימות במערכת כדי להפעיל סקריפטים בסדרה של תיקיות, כולל /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly ו-/etc/cron.monthly; יש גם קובץ בשם /etc/crontab.
מקם סקריפטים בתיקיות Cron
הצב סקריפטים בתיקיות הרלוונטיות כדי לגרום להם לפעול במרווחי זמן קבועים. לדוגמה, פתח חלון מסוף והפעל את הפעולות הבאות זה פקודה:
ls /etc/cron*
הפקודה מפרטת את התוכניות או הסקריפטים הפועלים מדי שעה, יומי, שבועי וחודשי.

התיקיות הללו מעורפלות. לדוגמה, יום יומי פירושו שהסקריפט פועל פעם ביום, אך אין לך שליטה על הזמן שהסקריפט רץ במהלך אותו יום.
שם נכנס קובץ ה-crontab. על ידי עריכת קובץ ה-crontab, אתה מפעיל סקריפט או תוכנית בתאריך ובשעה המדויקים שאתה רוצה שהם יפעלו.
הרשאות
הפקודה crontab דורשת שלמשתמש תהיה הרשאה לערוך קובץ crontab. ישנם שני קבצים המנהלים הרשאות crontab: /etc/cron.allow ו-/etc/cron.deny.
- אם הקובץ /etc/cron.allow קיים, המשתמש שרוצה לערוך את קובץ crontab חייב להיות רשום בקובץ זה.
- אם הקובץ cron.allow לא קיים, אבל יש קובץ /etc/cron.deny, המשתמש לא חייב להתקיים בקובץ זה.
- אם שני הקבצים קיימים, הקובץ /etc/cron.allow עוקף את קובץ /etc/cron.deny.
- אם אף אחד מהקבצים לא קיים, זה תלוי בתצורת המערכת אם משתמש יכול לערוך את ה-crontab.
משתמש השורש יכול תמיד לערוך את קובץ ה-crontab. אתה יכול להשתמש בשניהם פקודת su כדי לעבור למשתמש השורש או הפקודה sudo כדי להפעיל את פקודת crontab.
ערוך את קובץ Crontab
כל משתמש שיש לו הרשאות מתאימות יכול ליצור קובץ crontab. הפקודה cron מחפשת את כל קבצי ה-crontab ופועלת בכל קובץ.
כדי לבדוק אם יש לך קובץ crontab, הפעל את הפקודה הבאה:
crontab -l.
אם אין לך קובץ crontab, ההודעה אין crontab עבור מופיע, אחרת קובץ ה-crontab שלך יוצג.
פונקציונליות זו שונה ממערכת למערכת. לפעמים זה לא מציג כלום, ופעמים אחרות זה מציג אל תערוך את הקובץ הזה.

כדי ליצור או לערוך קובץ crontab, הפעל את הפקודה הבאה:
crontab -e.
לקובץ שנפתח יש הרבה מידע, אבל החלק המרכזי הוא הדוגמה שלפני סוף קטע ההערות (הערות מסומנות בשורות שמתחילות ב-#).
# m h dom mon dow פקודת.
0 5 * * 1 tar -zcf /var/backups/home.tgz /home/

יש שש פיסות מידע שיתאימו לכל שורה של קובץ ה-crontab:
- דקת היום שהפקודה היא לרוץ (מ).
- השעה ביום שהפקודה היא לרוץ (ח).
- היום בחודש שהפקודה היא לרוץ (דום).
- החודש שבו הפקודה אמורה לרוץ (mon).
- היום בשבוע שבו הפקודה היא לרוץ (דאו).
- הפקודה.
עבור כל פריט (פרט לפקודה), ניתן לציין תו כללי. תסתכל על קו ה-crontab לדוגמה הבא:
30 18 * * * tar -zcf /var/backups/home.tgz /home/
ב-30 דקות, 18 שעות ובכל יום, חודש ויום בשבוע, ערך הקרונטאב הזה רוכסן ו זֶפֶת את ספריית הבית לתיקיית /var/backups.
בדוגמאות שלהלן, החלף את המילה פקודה בפקודה שברצונך להפעיל.
כדי לקבל פקודה לפעול ב-30 דקות אחרי כל שעה, הפעל את הפקודה הבאה:
30 * * * * פקודה.
כדי לקבל פקודה לפעול כל דקה אחרי 18:00, הפעל את הפקודה הבאה:
* 18 * * * פקודה.
לכן, עליך להיות זהיר בהגדרת פקודות crontab.
לדוגמה:
* * * 1 * פקודה.
פקודה זו פועלת כל דקה של כל שעה בכל יום בכל שבוע בינואר.
כדי להפעיל פקודה ב-5 בבוקר ב-1 בינואר, הזן את הפקודה הבאה לקובץ crontab:
0 5 1 1 * פקודה.
כיצד להסיר קובץ Crontab
לרוב, לא תרצו להסיר את קובץ ה-crontab. עם זאת, ייתכן שתרצה להסיר כמה שורות מקובץ ה-crontab.
כדי להסיר את קובץ ה-crontab של המשתמש שלך, הפעל את הפקודה הבאה:
crontab -r.
דרך בטוחה יותר לעשות זאת היא להפעיל את הפקודה הבאה:
crontab -i.
מערכת ההפעלה מבקשת אימות לפני שהיא מסירה את קובץ ה-crontab.