جدولة المهام الدورية باستخدام Cron في Linux
كرون
هو برنامج Linux يستخدم لجدولة أمر أو برنامج نصي ليتم تنفيذه في وقت لاحق. يمكن استخدامه أيضًا لجدولة تشغيل الأوامر والبرامج النصية بشكل دوري. يشار إلى البرامج المجدولة باستخدام cron عادةً باسم كرون الوظائف. استخدامه الرئيسي هو مهام إدارة النظام مثل النسخ الاحتياطية المنتظمة وتحديثات البرامج المنتظمة ومهام الصيانة الأخرى المماثلة.
مقدمة
كرون
يعمل كخفي في Linux ، أي كعملية خلفية. يسمح للمستخدمين بجدولة المهام مباشرة باستخدام الأمر crontab ، الذي يفتح ملف تكوين يسمى Cron File في محرر. يتم إنشاء ملفات Cron منفصلة لكل مستخدم.
إنشاء ملف Cron وبناء الجملة الأساسي
ال كرونتاب
يمكن تنفيذ الأمر باستخدام -e
علم لتحرير ملف Cron موجود. إذا لم يكن الملف موجودًا بالفعل ، فسيتم إنشاؤه. إذا كان المستخدم يستدعي الأمر لأول مرة وإذا كان هناك عدة برامج تحرير ملفات مثبتة على نظام Linux ، فسيطلب الأمر من المستخدم اختيار محرر افتراضي من قائمة المحررين.
بعد اختيار المحرر ، سيتم إنشاء ملف cron للمستخدم وفتحه. يمكنك الآن تحديد المهام في الملف.
الصيغة العامة لتحديد Cron Job هي:
في الأساس ، سيتم تشغيلها في "الدقيقة" المحددة (0-59) ، "الساعة" (0-23) ، "اليوم من الشهر" (1-31) ، الشهر (1-12) ، اليوم من الأسبوع ، (0-7 ، ليوم الأحد ، يمكن استخدام إما 0 أو 7) في وظيفة كرون. للتبسيط ، لنأخذ مثالاً:
1 2 3 4 5 صدى صوت "مرحبًا"
هذا يعني الأمر صدى "مرحبا"
سيتم تشغيله في كل يوم خامس من الأسبوع (الجمعة) وكل يوم ثالث من الشهر ، في كل رابع شهر من العام (أبريل) ، في الساعة 02:01 (الساعة الثانية ، الدقيقة الأولى).
إذا تم تشغيل نفس الأمر كل يوم في الساعة 02:01 ، فستبدو الصيغة كما يلي:
1 2 * * * صدى "مرحبًا"
ال *
تشير إلى "دائمًا" أو "للجميع" ، على سبيل المثال لجميع الأشهر ، لجميع أيام الأسبوع ، إلخ.
مشغل الأمر (,
) يمكن استخدامها لإدخال قائمة القيم عندما يجب تكرار المهمة. فمثلا:
0 2،3،4 * * * صدى "مرحبًا"
سيؤدي هذا إلى تشغيل البرنامج في الساعة 2 صباحًا و 3 صباحًا و 4 صباحًا كل يوم.
بصورة مماثلة، واصلة (-
) المشغل أو العامل يمكن استخدامها لتحديد النطاق الذي يجب أن تتكرر المهمة فيه. فمثلا:
0-20 2 * * * صدى "مرحبًا"
سيؤدي هذا إلى تشغيل البرنامج الساعة 02:00 و 02:01 و 02:02 وهكذا حتى 02:20.
أخيرًا ، لدينا الشرطة المائلة ( /
) المشغل أو العامل. يتم استخدام هذا العامل لتحديد قيمة الفاصل الزمني التي سيتم بموجبها تكرار المهمة. على سبيل المثال. */15
في حقل الدقائق يعني أنه يجب تكرار المهمة كل 15 دقيقة. 2-10/2
في حقل الساعات ، يجب تكرار المهمة بين 2 صباحًا و 10 صباحًا بعد كل ساعتين (2 صباحًا ، 4 صباحًا ، 6 صباحًا ، 8 صباحًا ، 10 صباحًا).
* / 15 2-10 / 2 * * * صدى صوت "مرحبًا"
بعد إجراء الإدخال في ملف Cron ، احفظ الملف واخرج من المحرر.
يجب أن تشاهد ملف "تثبيت crontab جديد" في الجهاز بعد حفظ ملف crontab والخروج منه.
وحدات ماكرو
يتم تحديد وحدات ماكرو معينة مسبقًا في Cron والتي تحدد بعض الفترات الزمنية المطلوبة بشكل شائع ، مثل كل ساعة ، كل يوم ، كل شهر ، إلخ.
لتشغيل مهمة مرة واحدة كل يوم في بداية اليوم ، أي في الساعة 00:00 ، استخدم الماكرو @اليومي
. هذا يعادل 0 0 * * *
.
يمكنك وضع هذا في ملف Cron بنفس الطريقة الموضحة من قبل.
بطريقة مماثلة ، يمكن استخدام وحدات الماكرو الأخرى ، بمعنى. @ساعيا
(دقيقة 0 من كل ساعة) ، @شهريا
(00:00 من أول يوم في الشهر) ، @أسبوعي
(00:00 من أول يوم في الأسبوع ، @سنوي
(00:00 في الأول من يناير من كل عام) ، @اعادة التشغيل
(في كل بداية للكمبيوتر).
استنتاج
في هذه المقالة ، تعلمنا كيفية إضافة وظائف Cron للتنفيذ المنتظم في Linux. الاستخدام السليم لـ Cron Jobs مفيد حتى في أكثر المهام اليدوية إزعاجًا التي يواجهها المستخدم ، على سبيل المثال. الحذف المنتظم للسجلات القديمة ، وأرشفة جميع أنواع البيانات الباردة (البيانات التي نادرًا ما يتم الوصول إليها) ، إلخ.