ما هي وظيفة كرون؟

وظيفة cron هي مهمة مجدولة أو برنامج نصي يتم تشغيله تلقائيًا على فترات زمنية معينة.ماذا يمكن أن تفعل وظيفة كرون؟يمكن لوظيفة cron تشغيل أوامر أو نصوص أو برامج وفقًا لجدول زمني منتظم.يمكن أن يكون هذا مفيدًا لمهام مثل الحفاظ على تشغيل الكمبيوتر بسلاسة أو أداء المهام الإدارية.كيف أقوم بإعداد وظيفة كرون؟توجد عدة طرق لإعداد وظيفة cron على نظام Linux.يمكنك استخدام أداة Cronjob Manager أو تحرير ملف تكوين shell الخاص بك أو استخدام سطر الأوامر.ما الطريقة التي يجب أن أستخدمها؟تعد أداة Cronjob Manager أسهل استخدامًا وتوفر مرونة أكثر من تحرير ملف تكوين shell الخاص بك.لإعداد Cronjob جديد باستخدام Cronjob Manager: 1) افتح Cron Job Manager بالنقر على أيقونة "Cron Jobs" في علبة النظام (أو بكتابة "crontab -e"). 2) في Cron Job Manager ، انقر فوق الزر "جديد" لإنشاء CronJob جديد. 3) في مربع الحوار New CronJob ، أدخل اسمًا لـ CronJob الجديد الخاص بك وانقر فوق OK. 4) في نافذة CronJob المنشأة حديثًا ، سترى علامتي تبويب: عام وأوامر. 5) في علامة التبويب "عام" ، سترى معلومات حول حالتك الحالية (قيد التشغيل أو لا تعمل) ، بالإضافة إلى خيارات لتعيين الحدود الزمنية وإيقاف / بدء مهامك يدويًا. 6) في علامة التبويب "الأوامر" ، سترى جميع الأوامر المجدولة حاليًا للتشغيل في CronJob المحدد. 7) لإضافة أمر إضافي إلى هذه القائمة ، ما عليك سوى النقر فوقه وإدخال المعلمات المطلوبة في الحقول المناسبة في نافذة الأوامر التي تفتح (انظر أدناه). 8) لحذف أي أوامر موجودة من هذه القائمة ، ما عليك سوى تحديدها والضغط على مفتاح الحذف (أو تحديد إلغاء إذا كنت تريد حفظ التغييرات ولكن لا تريد إضافة أي أوامر جديدة). 9) انقر فوق "موافق" لإغلاق كلا النافذتين والعودة إلى شاشة Crontab الرئيسية حيث يجب الآن إدراج وظيفتك التي تم إنشاؤها حديثًا ضمن "الوظائف النشطة". 10) لبدء / إيقاف / إعادة تشغيل هذه الوظيفة المحددة على الفور دون انتظار انتهاء الفترة الزمنية المجدولة لها: 1) حددها من قائمة الوظائف النشطة واضغط على زر Start / Stop (أو انقر بزر الماوس الأيمن عليها واختر Start / Stop من السياق قائمة). 2) إذا كنت تريد استمرار تشغيل هذه الوظيفة تحديدًا حتى إذا لم تعد نشطة (على سبيل المثال عندما ينخفض ​​النظام ليلاً): 1 أ) حددها من قائمة الوظائف النشطة واضغط على إضافة قاعدة ... زر -> تغيير نوع الجدول الزمني - القائمة -> حدد خيار تشغيل كل يوم -> اضغط على زر تطبيق -> إغلاق نافذة القاعدة -> حفظ التغييرات بالضغط على زر موافق ب) انقر بزر الماوس الأيمن على الإدخال المحدد في قائمة الوظائف النشطة مرة أخرى -> إضافة قاعدة ... ج) القائمة المنسدلة "تغيير نوع الجدول" -> تحديد الخيار "تشغيل ليلاً" د) اضغط على زر "تطبيق" هـ) إغلاق نافذة القاعدة و) حفظ التغييرات بالضغط على زر "موافق" كيف يمكنني إيقاف مهام كرون الحالية قيد التشغيل؟لإيقاف جميع وظائف crons قيد التشغيل حاليًا: 1 ​​أ. حدد جميع العناصر في قسم تشغيل Crons من شاشة Crontab الرئيسية-> النقر بزر الماوس الأيمن-> إيقاف

1 ب. حدد الوظيفة الحالية من تشغيل قسم Crons لشاشة Crontab الرئيسية-> انقر بزر الماوس الأيمن-> إيقاف جميع العمليات ذات الصلة

كيف يمكنني إعادة تشغيل وظائف cron الحالية التي تم إيقافها؟لإعادة تشغيل جميع وظائف crons المتوقفة حاليًا: 1a. حدد جميع العناصر في قسم Stopped Crons من شاشة Crontab الرئيسية-> انقر بزر الماوس الأيمن-> إعادة تشغيل العمليات المحددة

1 ب. حدد الوظيفة الحالية من قسم Crons المتوقف في شاشة Crontab الرئيسية-> انقر بزر الماوس الأيمن-> إعادة تشغيل العمليات المحددة كيف يمكنني تغيير الفترة الزمنية المجدولة الحالية لوظائف cron الحالية قيد التشغيل؟لتغيير الفترة الزمنية المجدولة الحالية لواحدة أو أكثر من مهام cron قيد التشغيل حاليًا: 1a.

ما هو الغرض من وظيفة كرون؟

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

كيف تقوم بإعداد وظيفة cron على Linux؟

هناك عدة طرق مختلفة لإعداد وظيفة cron على نظام Linux.يمكنك استخدام الأمر crontab لإدارة وظائفك ، أو يمكنك استخدام Cron Job Manager.يمكنك أيضًا استخدام أداة Linux Scheduler لجدولة مهامك.أخيرًا ، يمكنك استخدام أداة سطر الأوامر لتشغيل مهامك.

لإدارة مهامك باستخدام الأمر crontab ، افتح أولاً نافذة طرفية واكتب:

كرونتاب -e

سيؤدي هذا إلى فتح ملف crontab في دليلك الحالي.يُطلق على السطر الأول من هذا الملف اسم "افتراضي" ، وهو يحدد بعض الخيارات الأساسية لاستخدام الأمر crontab.لإضافة وظيفة جديدة ، أدخل:

crontab -e >> mynewjob.cron

سيؤدي هذا إلى إنشاء إدخال جديد في ملف mynewjob.cron يمكنك تحريره حسب الحاجة.لتشغيل وظيفة ، ما عليك سوى إدخال:

crontab mynewjob.cron

يمكنك أيضًا تحديد أي يوم من الأسبوع يجب تشغيل وظيفتك فيه عن طريق إدخال رقم اختياري بعد "0" (على سبيل المثال ، "0 0 * *"). يمكنك أيضًا تحديد الوقت من اليوم الذي يجب أن تعمل فيه وظيفتك عن طريق إدخال رقم اختياري بعد "*" (على سبيل المثال ، "15 10 * *").

إذا كنت تريد إزالة وظيفة من قائمة المهام المجدولة ، فما عليك سوى إدخال:

crontab -r mynewjob.cron

يمكنك أيضًا حذف إدخالات فردية من قائمة المهام المجدولة عن طريق إدخال: ctrl-D (أو CMD-D في أجهزة Mac) متبوعًا باسم الإدخال الذي تريد حذفه.إذا كنت تريد فقط إزالة مهمة واحدة محددة من قائمتك ولكن لا تريد حذف جميع الإدخالات المرتبطة بها أيضًا ، فيمكنك إدخال: ctrl-X متبوعًا باسم الإدخال الذي تريد حذفه دون حذف الإدخالات ذات الصلة أيضًا .

أخيرًا ، إذا كنت تريد فقط عرض معلومات حول مهمة معينة تمت جدولتها حاليًا ولكن لم يتم تشغيلها بعد ، فأدخل: ctrl-P متبوعًا باسم المهمة التي تريد معلومات عنها.

كم مرة تعمل وظيفة كرون؟

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

هل يمكن ضبط وظيفة cron لتعمل أكثر من مرة في الساعة؟

نعم ، يمكن تعيين وظيفة cron لتعمل أكثر من مرة في الساعة.للقيام بذلك ، أضف السطر التالي إلى ملف crontab الخاص بك:

* / 1 * * * * / usr / bin / php -f /var/www/html/cronjob.php

سيؤدي هذا إلى تنفيذ نص php الموجود على /var/www/html/cronjob.php كل ساعة.

ماذا يحدث إذا لم تحدد فترة زمنية لـ cronjob الخاص بك؟

إذا لم تحدد فاصلاً زمنيًا لـ cronjob الخاص بك ، فسيتم تشغيله كل دقيقة.إذا كنت تريد تشغيلها أكثر ، يمكنك إضافة تعبير وقت مثل "* / 5" والذي يقوم بتشغيل الوظيفة كل خمس دقائق.إذا كنت تريد تشغيلها بمعدل أقل ، يمكنك إضافة رقم مثل "0 * / 5" والذي من شأنه تشغيل الوظيفة مرة واحدة كل خمس دقائق.

هل يؤثر وقت النظام على وقت تشغيل وظيفة cron الخاصة بي؟

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

لتحديد ما إذا كان وقت النظام يؤثر أم لا عند تشغيل وظيفة cron ، ستحتاج إلى إلقاء نظرة على تكوين جهازك.بعض الطرق الشائعة للقيام بذلك هي باستخدام الأمر date أو عن طريق عرض محتويات /etc/rc.local. يمكن الوصول إلى هاتين الطريقتين من نافذة طرفية بكتابة sudo.

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

.

أريد أن يعمل البرنامج النصي الخاص بي كل دقيقة ، ما هو الفاصل الزمني الصحيح؟

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

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

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

أخيرًا ، ضع في اعتبارك أنه لم يتم تكوين جميع الأنظمة بالطريقة نفسها تمامًا ؛ لذلك ، قد لا تعمل معلمات معينة (مثل الفاصل الزمني) بشكل صحيح على جهاز واحد مقابل جهاز آخر.في هذه الحالات ، قد يكون من الضروري تجربة فترات مختلفة حتى يتم العثور على شيء يعمل بشكل موثوق.

النص الخاص بي لا يعمل ، ما الخطأ؟

يمكن أن يكون هناك بعض الأشياء الخاطئة.أولاً ، تأكد من أن البرنامج النصي قابل للتنفيذ.للقيام بذلك ، يمكنك استخدام الأمر chmod لتغيير أذونات الملف بحيث يمكن قراءته بواسطة حساب مستخدم جهاز الكمبيوتر الخاص بك (عادةً 755 للملفات في Linux) وقابل للكتابة بواسطة حساب مجموعة الكمبيوتر الخاص بك (عادةً 666 للملفات في Linux) . إذا لم يكن لديك حق الوصول إلى الأمر chmod ، فيمكنك محاولة استخدام sudo لمنح نفسك الإذن بتعديل الملف.

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

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

غالبًا ما يواجه مستخدمو Linux مشكلات أثناء محاولة إعداد وظائف cron الخاصة بهم بسبب نقص المعرفة المناسبة بأوامر Linux التي تُستخدم لأغراض إدارة الوظائف مثل chmod وما إلى ذلك ، لذلك قمنا بكتابة هذا الدليل حول كيفية تعيين وظيفة cron على لينكس بسهولة وسرعة باستخدام مساعدة من بعض الأوامر الأساسية مثل chmod وما إلى ذلك .. آمل أن يساعدك هذا الدليل!

للبدء بإعداد cronjob على نظام لينكس: 1) افتح نافذة المحطة 2) اكتب الأمر التالي 3) أدخل "chmod + x myscript" 4) احفظ myscript باسم myscript.sh5) تنفيذ myscript.sh6) يجب أن تبدأ وظيفتك الآن تلقائيًا كل day at midnight7) لإيقاف وظيفة قيد التشغيل: اكتب "cronjob -f" 8) لإدراج cronjobs النشطة حاليًا: اكتب "cronjob -l" 9) لحذف cronjob الحالي النشط: اكتب "cronjob -d" 10) تذكر دائمًا أن هذا صحيح يعد استخدام الأوامر المذكورة أعلاه أمرًا مهمًا للغاية أثناء إعداد أي نوع من مهام البرمجة النصية للقذيفة على نظام لينكس ، لذا يرجى قراءة البرنامج التعليمي المذكور بعناية أدناه قبل بدء أي مهمة متعلقة ببرمجة shell على نظام لينكس: - أولاً افتح نافذة المحطة الطرفية - اكتب الأمر التالي - أدخل الآن احفظ سكربت باسم MyScriptname على سبيل المثال: -حفظ MyScriptname as test_script بمجرد الحفظ بنجاح أغلق نافذة المحطة الطرفية الآن افتح نافذة طرفية جديدة اكتب الأمر التالي - أدخل يجب أن ترى إخراجًا مشابهًا لإخراج لقطة الشاشة التالية من الأمر المذكور أعلاه When executed successfullyabovementionedcommandwill create an executablefile namedtest_scriptinsidecurrentdirectorywhereyourunningitfromnowyoucanstartusingitbyjustexecutingitwithoutany further argumentsLikebelow:(Abovecommandwillruntest_scriptonceinitsinitializationphaseandstopitsrunningimmediatelyaftercompletionofitstask.)Similarlyyoucanexecutemanydifferenttypesofcommandswithsimpleargumentslikestop(),start(),status()etc.(Pleaserememberthattheoutputofthestartingcommandswillbedisplayedinterminalwindowwhiletheoutputofthestoppingcommandswillbedisplayedinnewterminalwindow.

يظهر لي خطأ من البرنامج النصي الخاص بي ، كيف يمكنني معرفة السبب؟

هناك عدة طرق لمعرفة سبب حدوث خطأ في النص البرمجي.تتمثل إحدى الطرق في استخدام الأمر "grep" للبحث عن سطور معينة في البرنامج النصي الخاص بك والتي تسبب المشكلة.هناك طريقة أخرى وهي استخدام الأمر "log" لمعرفة ما يحدث عند تشغيل النص البرمجي.أخيرًا ، يمكنك أيضًا استخدام الأمر "tail -f" لمشاهدة إخراج البرنامج النصي أثناء تشغيله ، حتى تتمكن من معرفة ما إذا كان هناك أي أخطاء أو سلوك غير متوقع يحدث.

هل يمكنني الحصول على أكثر من أمر واحد في Cron Job الخاص بي؟12 كيف يمكنني حذف وظيفة Cron؟13 هل يمكن إرسال إخراج من أوامري إليّ عبر البريد الإلكتروني؟

14 كيف أتأكد من أن Cron Job الخاص بي يعمل في وقت معين؟15 ما هي بعض الأمثلة الجيدة على وظيفة Cron Job؟16

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

لإنشاء وظيفة cron ، افتح أولاً واجهة سطر الأوامر (CLI) على جهاز الكمبيوتر الخاص بك.ثم اكتب الأمر التالي: sudo crontab -e سيؤدي ذلك إلى فتح ملف CRONTAB في محرر النصوص الذي تختاره.في الجزء العلوي من هذا الملف ، سترى سطورًا تبدو كالتالي: # يحتوي هذا الملف على وظيفة واحدة أو أكثر.يحدد كل سطر الإجراء الذي يجب أن تتخذه الصدفة عند تنفيذه بشكل غير متزامن # التنسيق هو: يسمى السطر الأول في هذا الملف "اسم الوظيفة".إنه ما ستستخدمه لتحديد وظيفتك عند تشغيلها من سطر الأوامر.بعد ذلك ، تأتي "الأوامر" ، وهي مجرد أوامر قديمة بسيطة تريد تشغيلها كجزء من وظيفتك.على سبيل المثال ، إليك واحدًا يطبع جميع وسائطه: echo $ * أخيرًا ، هناك سطرين يخبران CRON بنوع المهمة التي يمثلها الأمر - في هذه الحالة ، هو ملف نصي (.sh).إذا كان كل شيء يبدو على ما يرام ، فاحفظ وأغلق ملف CRONTAB باستخدام Ctrl + X ثم Y ثم Enter. أنت الآن جاهز لبدء استخدام وظيفتك الجديدة!لبدء تشغيله ، ما عليك سوى كتابة sudo ./your_new_job_name حيث يكون your_new_job_name هو كل ما تسميه ملف CRONTAB الخاص بك عند إنشائه.إذا سارت الأمور على ما يرام ، يجب أن تبدأ وظيفتك الجديدة على الفور!

نعم!طالما أن كل أمر يخرج بنجاح دون خطأ (أي لا يسبب أي ضرر) ، يمكنك وضع العديد من الأوامر في Cron Job الخاص بك كما تريد!فقط تأكد من خروجهم جميعًا بنجاح قبل الخروج من CRONTAB.

لحذف وظيفة Cron قيد التشغيل حاليًا ، ما عليك سوى كتابة sudo rm -f YOURJOBNAME حيث يكون YOURJOBNAME هو اسم وظيفة Cron المخالفة. كن حذرًا - إذا كانت هناك أية مهام معلقة مرتبطة بـ YOURJOBNAME ، فسيتم حذفها معها!تأكد من تنظيف كل شيء آخر مرتبط بـ YOURJOBNAME بشكل صحيح قبل حذفه بالرغم من ذلك :)

نعم!لإرسال مخرجات من أوامر معينة داخل Cron Job كرسائل بريد إلكتروني بدلاً من مجرد طباعتها على الشاشة * ، ما عليك سوى تضمين علامة إضافية عند تنفيذ هذه الأوامر: echo -n> & 2 Where & 2 تمثل حرف الأنبوب (|). على سبيل المثال ، إذا أردنا أن تنتقل رسالة البريد الإلكتروني إلى / var / mail / username بدلاً من stdout فقط ، فسنستخدم شيئًا كهذا: echo -n "تم تشغيل مهمتك بنجاح!" >> / var / mail / username ملاحظة * قد لا يعمل إخراج البريد الإلكتروني بشكل صحيح إذا تم تثبيت بعض برامج الجهات الخارجية على جهاز الكمبيوتر الخاص بك والذي يغير كيفية عمل الإدخال والإخراج القياسي (مثل الشاشة). في مثل هذه الحالات ، يرجى محاولة الطباعة بدلاً من إرسال المخرجات من أوامر معينة داخل CronJob عبر البريد الإلكتروني.

  1. ما هي وظيفة كرون وكيف تعمل؟
  2. كيف أقوم بإنشاء وظيفة cron؟
  3. هل يمكنني الحصول على أكثر من أمر واحد في Cron Job الخاص بي؟
  4. كيف يمكنني حذف وظيفة Cron؟
  5. هل يمكن إرسال أوامري عبر البريد الإلكتروني إلي؟