كيفية جدولة وظيفة Crontab لكل ساعة

How Schedule Crontab Job



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

في بعض الأحيان ، قد ترغب في تنفيذ مهمة محددة مرة واحدة كل ساعة. قد تكون هذه مهمة صعبة للغاية بالنسبة للمستخدم إذا كان سيتم تنفيذ المهمة يدويًا ، حيث يجب أن يكون المستخدم متاحًا كل ساعة لتنفيذ هذه المهمة. إذا كانت المهمة حرجة للغاية ويفوت المستخدم بطريقة ما الوقت اللازم لتنفيذها ، فقد يؤدي ذلك إلى عواقب وخيمة.







يمكن أن يكون برنامج جدولة الوظائف Crontab نعمة في مثل هذه المواقف. باستخدام Crontab ، يمكنك إضافة مهام إلى ملف Crontab ليتم تنفيذها كوظيفة في أوقات محددة. ستوضح لك هذه المقالة كيفية جدولة وظيفة Crontab لتحدث مرة واحدة كل ساعة في Linux Mint 20.



طريقة لجدولة وظيفة Crontab لكل ساعة

لجدولة وظيفة crontab لتحدث مرة كل ساعة في Linux Mint 20 ، اتبع الخطوات المذكورة أدناه.



الخطوة 1: إنشاء مهمة لجدولتها كوظيفة Crontab

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





الخطوة الثانية: ابدأ خدمة Crontab

كما ترى في لقطة الشاشة أدناه ، فقد أطلقنا نافذة طرفية جديدة قبل بدء خدمة crontab الجديدة.

قبل إضافة هذا البرنامج النصي كوظيفة إلى ملف Crontab ، نحتاج أولاً إلى بدء خدمة Crontab ، والتي يمكن القيام بها عن طريق تنفيذ الأمر التالي:

$سودوsystemctl ابدأ كرون


سيؤدي تشغيل هذا الأمر إلى بدء خدمة Crontab على الفور دون عرض أي إخراج على الجهاز.



الخطوة 3: التحقق من حالة خدمة Crontab

على الرغم من أن الأمر أعلاه يبدأ تلقائيًا خدمة Crontab ، إلا أنه يمكنك التحقق من خدمة Crontab قبل المضي قدمًا عن طريق التحقق من حالتها من خلال الأمر التالي:

$سودوsystemctl status cron


إذا بدأت خدمة Crontab بنجاح ، فسيظهر لك تشغيل الأمر أعلاه الحالة النشطة (قيد التشغيل) ، كما هو موضح في الصورة أدناه. ستؤكد هذه الحالة أن خدمة Crontab تعمل بشكل صحيح.

الخطوة 4: قم بتشغيل ملف Crontab

بمجرد التأكد من أن خدمة Crontab تعمل بشكل صحيح ، يمكنك فتح ملف Crontab لإضافة الوظيفة المطلوبة إليه ، ليتم جدولتها كل ساعة. يمكن فتح ملف Crontab عن طريق تشغيل الأمر التالي في المحطة:

$كرونتاب -e


سيفتح هذا الأمر ملف Crontab في المحطة.

الخطوة 5: أضف مهمة إلى ملف Crontab ليتم تنفيذها كل ساعة

بمجرد فتح ملف Crontab ، ستحتاج إلى الضغط على Ctrl + O لتحريره. بعد ذلك ، أضف السطر المميز في الصورة التالية إلى ملف Crontab الخاص بك. في هذا السطر ، ستطلب المعلمة 0 * * * * إخبار Cron daemon بتنفيذ المهمة مرة كل ساعة. لقد كتبنا مسار ملف bash الخاص بنا في هذا السطر حتى يتمكن Cron daemon من الوصول بسهولة إلى ملف bash كلما تم تنفيذ المهمة. بنفس الطريقة ، يمكنك أيضًا إضافة أي أمر آخر تريد تنفيذه كل ساعة بدلاً من إعطاء مسار للملف. بعد إضافة هذا السطر ، يمكنك حفظ هذا الملف وإغلاقه.

بمجرد إغلاق هذا الملف ، سيقوم برنامج Cron daemon تلقائيًا بتثبيت Crontab الجديد ، كما هو موضح في الصورة أدناه. بهذه الطريقة ، لا يتعين عليك إخبار نظامك صراحةً أنك أضفت وظيفة Crontab جديدة إلى ملف Crontab لأن عفريت Cron نفسه يؤدي هذه المهمة كلما أجريت أي تعديلات على الملف. بمجرد تثبيت ملف Crontab الجديد ، سيتم تنفيذ المهمة كل ساعة.

استنتاج

في هذا البرنامج التعليمي ، تعلمت طريقة بسيطة لجدولة وظيفة Crontab كل ساعة. في المثال الذي تمت مناقشته في هذه المقالة ، أنشأنا وظيفة Crontab لملف bash ليتم تنفيذه كل ساعة. يمكنك إنشاء أي مهمة أخرى يتم تنفيذها كل ساعة كوظيفة Crontab باتباع نفس الإجراء. علاوة على ذلك ، إذا كنت تريد تنفيذ مهمة Crontab في وقت محدد خلال الساعة ، على سبيل المثال ، الساعة 10:30 ، ثم الساعة 11:30 ، وما إلى ذلك ، فيمكنك القيام بذلك عن طريق تغيير حقل 0 دقيقة إلى 30 . بهذه الطريقة ، يمكنك التلاعب أكثر بجدولة الوظائف باستخدام برنامج Cron daemon.