Cron هي خدمة جدولة المهام على أساس الوقت في أنظمة التشغيل المشابهة لـ Unix. يمكن للمستخدمين جدولة المهام (الأوامر أو البرامج النصية) لتشغيلها في أوقات أو تواريخ أو فترات زمنية محددة. هذه الميزة مفيدة بشكل خاص لأتمتة مهام صيانة النظام، أو تشغيل البرامج النصية، أو حتى إرسال رسائل البريد الإلكتروني على فترات زمنية محددة.
تشريح وظيفة كرون
يعد فهم هيكل وظيفة Cron أمرًا بالغ الأهمية. مهمة Cron عبارة عن سطر واحد في ملف crontab (جدول Cron) يمثل أمرًا مجدولًا للتشغيل على فترات زمنية محددة. يحتوي إدخال crontab على ستة حقول:
- الدقائق (0 – 59)
- الساعات (0 - 23)
- يوم الشهر (1 – 31)
- الشهر (1 – 12)
- يوم الأسبوع (0 - 7، حيث يمثل كل من 0 و 7 يوم الأحد)
- أمر بالتنفيذ
إعداد وظيفة كرون
لجدولة مهمة Cron، تحتاج إلى تحرير ملف crontab. يمكنك القيام بذلك باستخدام crontab -e
الأمر الذي يفتح ملف crontab في محرر النصوص. إليك إرشادات سريعة:
- فتح كرونتاب: تشغيل
crontab -e
يأمر. يؤدي هذا إلى فتح ملف crontab في محررك الافتراضي. - إضافة وظيفة كرون: في سطر جديد، حدد معلمات الجدولة (الدقائق والساعات وما إلى ذلك) متبوعة بالأمر.
- الحفظ والخروج: احفظ التغييرات واخرج من المحرر.
أمثلة على وظائف كرون الشائعة
يمكن إثبات تنوع استخدامات Cron من خلال مجموعة واسعة من حالات الاستخدام. وفيما يلي بعض الأمثلة على ذلك:
- النسخ الاحتياطي للدليل يوميا: يمكنك جدولة مهمة Cron لإجراء نسخ احتياطي لدليل معين يوميًا. افترض أن الدليل هو /home/username/documents، وتريد النسخ الاحتياطي في الساعة 2 صباحًا كل يوم.
0 2 * * * tar -zcf /var/backups/home.tgz /home/username/documents
- تشغيل البرنامج النصي كل دقيقة: إذا كان لديك برنامج نصي (على سبيل المثال، script.sh الموجود في /home/username/script.sh)، فيمكنك جدولته ليتم تشغيله كل دقيقة.
* * * * * /home/username/script.sh
- إرسال بريد إلكتروني كل يوم اثنين: لنفترض أن لديك ملف mail.txt، وترغب في إرسال محتوياته بالبريد الإلكتروني كل يوم اثنين الساعة 5 مساءً. يمكنك استخدام أمر البريد بالتزامن مع Cron.
0 17 * * MON cat /home/username/mail.txt | mail -s "Weekly Update" [email protected]
نصائح وحيل كرون المتقدمة
على الرغم من أن Cron قوي ومرن، إلا أن هناك بعض النصائح والحيل التي يمكن أن تساعدك على تحسين استخدامه:
- مسار الإعداد: أثناء جدولة المهام، يمكنك تعيين متغير بيئة PATH أعلى ملف crontab للتأكد من العثور على جميع الأوامر دون تحديد مسارات مطلقة.
- إعادة توجيه الإخراج: افتراضيًا، يرسل Cron بريدًا إلكترونيًا إلى حساب المستخدم الذي ينفذ مهمة cron. إذا لم يكن ذلك مطلوبًا، فيمكنك إعادة توجيه الإخراج إلى /dev/null.
- وظائف تسجيل كرون: لتتبع مهمة cron، يمكنك إعادة توجيه الإخراج إلى ملف سجل بدلاً من ذلك.
القيود والبدائل لكرون
على الرغم من مميزاته، إلا أن كرون لا يخلو من القيود. فهو يفتقر إلى ميزات مثل تبعيات الوظيفة، وتسلسل الوظائف، والتقارير التفصيلية، الموجودة في برامج جدولة المهام الأكثر تقدمًا.
هناك العديد من البدائل القوية لـ Cron، بما في ذلك:
- أناكرون: مثالية للأنظمة التي لا تعمل بشكل مستمر.
- فكرون: يجمع بين وظائف كل من Cron وAnacron، مع ميزات محسنة.
- توقيتات النظام: بديل حديث لـ Cron في توزيعات Linux المستندة إلى Systemd.
مزيد من التعلم
- دليل كرون على وثائق أوبونتو
- دروس كرون على TecMint
- نظرة عامة على Cron في البرامج التعليمية الخاصة بـ DigitalOcean
- صفحة رجل كرونتاب
بفضل قوة Cron، يمكنك أتمتة أي مهمة تقريبًا قد تقوم بتشغيلها يدويًا. إن هيكله البسيط وخيارات الجدولة المرنة تجعله عنصرًا أساسيًا في مجموعة أدوات مسؤول النظام المشابه لنظام Unix.