حرف C

جدول مهام كرون (Crontab)

Crontab

آخر تحديث: 2026-10-24
مستوى الشرح اختر المستوى التقني المناسب لك

الشرح المبسط

تخيل أن لديك مساعدا شخصيا يعمل على مدار الساعة ليقوم بتنفيذ مهام متكررة نيابة عنك في أوقات دقيقة جدا. هذه هي وظيفة جدول مهام كرون (Crontab) في نظام لينكس (Linux). بدلا من أن تقوم بكتابة أمر النسخ الاحتياطي (Backup) لملفاتك كل ليلة يدويا، يمكنك كتابة هذا الأمر داخل جدول المهام وتحديد الوقت الذي تريده. سيقوم النظام بعد ذلك بتشغيل الأمر (Command) بشكل تلقائي في الوقت المحدد، سواء كان ذلك كل دقيقة، أو كل يوم، أو في يوم محدد من كل شهر دون الحاجة لتدخلك نهائيا.

الشرح التقني المتقدم

تعتبر أداة جدول مهام كرون (Crontab) من أهم الأدوات في إدارة أنظمة لينكس (Linux)، حيث تعتمد على خادم العمليات بالخلفية (Daemon) المسمى كرون (Cron) لتنفيذ السكربتات والأوامر بشكل دوري ومجدول. يعمل هذا الخادم في الخلفية ويفحص جداول المهام باستمرار لتنفيذ أي أمر يحين وقته دون أي تدخل بشري.

فهم البنية النحوية لجدول المهام

يعتمد الجدول على خمسة حقول زمنية متتالية تسبق الأمر المراد تنفيذه، وتتوزع كالتالي: الدقيقة، الساعة، يوم الشهر، الشهر، ويوم الأسبوع.

ملف التكوين (Configuration File): يمتلك كل مستخدم في النظام ملفا خاصا به لجدولة مهامه، بينما يوجد ملف عام للنظام بالكامل يسمى جدول مهام النظام (System Crontab).

إدارة المهام المجدولة (الأمر crontab)

لإضافة مهمة جديدة أو تعديل المهام الحالية للمستخدم الحالي، يتم فتح محرر النصوص الافتراضي لجدول المهام عبر هذا الأمر:

أمر التنفيذ:

crontab -e

إليك مثال يوضح كيفية جدولة أمر لأخذ نسخة احتياطية كل يوم في تمام الساعة 2:30 صباحا، وتوجيه المخرجات إلى ملف السجلات (Logs) مع كتم الأخطاء:

30 2 * * * /usr/bin/tar -czf /backup/data.tar.gz /data > /dev/null 2>&1

توضيح للخيارات والأوامر الشائعة عند التعامل مع الجدولة:

  • سرد المهام: استخدم الأمر crontab -l لعرض جميع المهام المجدولة الخاصة بك دون التعديل عليها.
  • حذف الجدول: يقوم الأمر crontab -r بمسح جميع مهامك المجدولة نهائيا، لذا يجب استخدامه بحذر شديد.
  • تحويل المخرجات: ينصح دائما باستخدام التوجيه > /dev/null 2>&1 لمنع النظام من إرسال رسائل بريد إلكتروني (Emails) مزعجة بعد كل عملية تنفيذ.

ملاحظة ختامية: مسارات الأوامر (Absolute Paths)

من أفضل الممارسات عند كتابة المهام المجدولة هو استخدام المسارات المطلقة (Absolute Paths) للأوامر والملفات، لأن بيئة تشغيل المهام (Environment Variables) تختلف عن بيئة المستخدم العادية وقد لا تتعرف على مسار الأوامر المختصرة.