كيفية إنشاء وإدارة مهام Cron على نظام Linux

كرون هو واحد من أدوات لينكس الأكثر فائدة والمفضلة لدى المطورين لأنها تسمح لك بتشغيل أوامر مُتَّكرَرة تلقائيًا في فترات زمنية محددة، وتواريخ، وفترات زمنية باستخدام النصوص العامة والخاصة بالمهام. بناءً على هذا الوصف، يمكنك تخيل كيف يستخدم مسؤولو النظام ذلك لـ تلقيم مهام النسخ الاحتياطي تلقائيًا، تنظيف الدلائل، والإشعارات، إلخ.

تعمل مهام الكرون في الخلفية وتفحص باستمرار ملف /etc/crontab، ومجلدات /etc/cron.*/ و /var/spool/cron/. لا يفترض تحرير ملفات الكرون مباشرةً ولكل مستخدم crontab فريد.

إذا كان كذلك، كيف يُفترض أن تُنشئ وتُحرر مهام الكرون؟ باستخدام أوامر crontab. يعد crontab الطريقة التي تستخدمها لإنشاء وتحرير وتثبيت وإلغاء تثبيت وسرد مهام الكرون.

الأمر الخاص بإنشاء وتحرير مهام الكرون هو نفسه وبسيط. والأروع من ذلك حتى أنه لا يلزم إعادة تشغيل الكرون بعد إنشاء ملفات جديدة أو تحرير الموجودة.جملة الكرون

$ crontab -e

جملة Cron

كما هو الحال مع أي لغة، يكون العمل مع cron أسهل بكثير عندما تفهم بنية الجملة الخاصة به، وهناك صيغتان يجب أن تعرفهما:

A B C D E USERNAME /path/to/command arg1 arg2
OR
A B C D E USERNAME /root/backup.sh

شرح بنية cron أعلاه:

  • A: Minutes range: 0 – 59
  • B: Hours range: 0 – 23
  • C: Days range: 0 – 31
  • D: Months range: 0 – 12
  • E: Days of the week range: 0 – 7. Starting from Monday, 0 or 7 represents Sunday
  • اسم المستخدم: استبدل هذا باسم المستخدم الخاص بك
  • /المسار/إلى/الأمر – اسم السيناريو أو الأمر الذي ترغب في جدولته

هذا ليس كل شيء. تستخدم Cron 3 رموز عاملة تسمح لك بتحديد قيم متعددة في حقل ما:

  1. نجمة (*): تحدد جميع القيم الممكنة لحقل معين
  2. الفاصلة (,): تحدد قائمة من القيم
  3. الشرطة (-): تحدد مجموعة من القيم
  4. الفاصل (/): تحدد قيمة خطوة

الآن بعد أن تعرفت على بنية Cron والعوامل المشغلة، دعنا نرى بعض أمثلة على cron.

أمثلة على Cron Job

الخطوة الأولى لتشغيل أوامر cron هي تثبيت crontab الخاص بك بالأمر:

# crontab -e

تشغيل /root/backup.sh عند الساعة 3 صباحًا كل يوم:

0 3 * * * /root/backup.sh

تشغيل script.sh عند الساعة 4:30 مساءً في اليوم الثاني من كل شهر:

30 16 2 * * /path/to/script.sh

تشغيل /scripts/phpscript.php عند الساعة 10 مساءً خلال الأسبوع:

0 22 * * 1-5 /scripts/phpscript.php

تشغيل perlscript.pl بعد 23 دقيقة من منتصف الليل، الساعة 2 صباحًا والساعة 4 صباحًا، كل يوم:

23 0-23/2 * * * /path/to/perlscript.pl

تشغيل أمر Linux في 04:05 كل يوم أحد:

5 4 * * sun /path/to/linuxcommand

خيارات Cron

قائمة بأوامر cron.

# crontab -l
OR
# crontab -u username -l

حذف جميع وظائف crontab.

# crontab -r

حذف وظيفة كرونلمستخدم معين.

# crontab -r -u username

السلاسلفي Crontab

تعتبر السلاسل من الأشياء المفضلة لدى المطورينلأنها تساعد على توفير الوقت من خلال القضاء على الكتابة المتكررة.يحتوي Cron على سلاسل معينة يمكن استخدامهالإنشاء الأوامر بشكل أسرع:

  1. @hourly: تشغيل مرة واحدة كل ساعة أي “0 * * * *
  2. @midnight: تشغيل مرة واحدة كليوم أي “00 * * *
  3. @daily:يعادل midnight
  4. @weekly: تشغيل مرة واحدة كل أسبوع أي “00 * *0
  5. @monthly: تشغيل مرة واحدة كل شهر أي “001 * *
  6. @annually: تشغيل مرة واحدة كل عام أي “0011 *
  7. @yearly:يعادل @annually
  8. @reboot: تشغيل مرة واحدة فيكل بدء تشغيل

على سبيل المثال،هذههي الطريقة لنقل النسخ الاحتياطية لنظامككليوم:

@daily /path/to/backup/script.sh

عندهذه النقطة،لديككل ما تحتاجهلإنشاء وإدارة مهام النظام باستخدام Cron.يمكنك الآن البدءفي إعداد وصيانة العديد من البيئات باستخدام الأوامر المجدولة.

ما مدى استخدامكلـ Cron؟ وهلهناك تفاصيليمكنك إسهامهافي المقال؟ مربع النقاش أسفله.

عندما تفهم ما يكفي حول كيفية عمل Crontab، يمكنك استخدام هذه الأدوات الرائعة مولد جدول الأعمال الآلية لتوليد أسطر crontab مجانًا.

كما يمكنك قراءة مقال أوبونتو حول كيفية استخدام Cron هنا. يحتوي على موارد قد تجدها مفيدة.

Source:
https://www.tecmint.com/create-and-manage-cron-jobs-on-linux/