Skip to main content

كيفية تحرير ملف لينكس Crontab لجدولة الوظائف

The Great Gildersleeve: Gildy the Athlete / Dinner with Peavey / Gildy Raises Christmas Money (أبريل 2025)

The Great Gildersleeve: Gildy the Athlete / Dinner with Peavey / Gildy Raises Christmas Money (أبريل 2025)
Anonim

دعا الشيطان في لينكس كرون يدير العمليات على فترات منتظمة. يقوم بالتحقق من مجلدات معينة على النظام الخاص بك لتشغيل البرامج النصية في سلسلة من المجلدات بما في ذلك /etc/cron.hourly و /etc/cron.daily و /etc/cron.weekly و /etc/cron.monthly. هناك أيضا ملف يسمى / etc / crontab.

وضع البرامج النصية في مجلدات كرون

يمكنك ببساطة وضع البرامج النصية في المجلدات ذات الصلة لحملهم على تشغيل فترات منتظمة.

على سبيل المثال ، افتح نافذة طرفية وقم بتشغيل الأمر ls التالي:

ls / etc / cron *

سترى قائمة البرامج أو البرامج النصية التي يتم تشغيلها كل ساعة ، يومية ، أسبوعية ، وشهرية.

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

هذا هو المكان الذي يأتي فيه ملف crontab.

عن طريق تحرير ملف crontab يمكنك الحصول على برنامج نصي أو برنامج لتشغيله في التاريخ والوقت المحدد الذي تريد تشغيله.

أذونات

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

  • /etc/cron.allow
  • /etc/cron.deny

إذا كان الملف /etc/cron.allow موجودًا ، فيجب أن يكون المستخدم الذي يريد تحرير ملف crontab في هذا الملف. إذا لم يكن الملف cron.allow موجودًا ولكن يوجد ملف /etc/cron.deny ، فيجب ألا يكون المستخدم موجودًا في هذا الملف. في حالة وجود كلا الملفين ، يتجاوز /etc/cron.allow الملف /etc/cron.deny. في حالة عدم وجود أي ملف ، يعتمد ذلك على تكوين النظام سواء كان يمكن للمستخدم تحرير crontab.

يمكن للمستخدم الجذر دائمًا تحرير ملف crontab. يمكنك إما استخدام الأمر su للتبديل إلى المستخدم الجذر أو الأمر sudo لتشغيل الأمر crontab.

تحرير ملف Crontab

يمكن لكل مستخدم لديه الأذونات المناسبة إنشاء ملف crontab الخاص به. يبحث الأمر cron بشكل أساسي عن كل ملفات crontab ويعمل من خلال كل منها.

للتحقق مما إذا كان لديك ملف crontab ، قم بتشغيل الأمر التالي:

crontab -l

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

لإنشاء أو تحرير ملف crontab ، قم بتشغيل الأمر التالي:

crontab -e

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

# m h dom mon dow command

0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

هناك 6 أجزاء من المعلومات لتناسب كل سطر من ملف crontab:

  • الدقيقة من اليوم يتم تشغيل الأمر (m)
  • الساعة من اليوم الذي يتم تشغيل الأمر فيه (h)
  • يوم الشهر يتم تشغيل الأمر (dom)
  • الشهر الذي سيتم تشغيل الأمر فيه (الاثنين)
  • يوم الأسبوع يتم تشغيل الأمر (داو)
  • الامر

لكل عنصر (باستثناء الأمر) ، يمكنك تحديد حرف بدل. انظر إلى المثال التالي: خط كرونتاب:

30 18 * * * tar -zcf /var/backups/home.tgz / home /

في 30 دقيقة ، 18 ساعة وأي يوم وشهر ويوم من الأسبوع ، سيؤدي إدخال crontab هذا إلى ضغط مجلد المسار الرئيسي إلى مجلد / var / backups.

للحصول على أمر للتشغيل في 30 دقيقة بعد كل ساعة ، قم بتشغيل الأمر التالي:

30 * * * * الأمر

للحصول على أمر لتشغيل كل دقيقة بعد الساعة 6 مساءً ، شغّل الأمر التالي:

* 18 * * * الأمر

لذا يجب عليك توخي الحذر بشأن إعداد أوامر crontab الخاصة بك.

فمثلا:

* * * 1 * أمر

سيتم تشغيل هذا الأمر كل دقيقة من كل ساعة من كل يوم من كل أسبوع في شهر يناير.

لتشغيل أمر في الساعة 5 صباحًا من يوم 1 يناير ، عليك إجراء الأمر التالي لملف crontab:

0 5 1 1 * الأمر

كيفية إزالة ملف Crontab

في معظم الأحيان ، لن ترغب في إزالة ملف crontab ، ولكن قد ترغب في إزالة بعض الصفوف من ملف crontab.

ومع ذلك ، إذا كنت تريد إزالة ملف crontab الخاص بالمستخدم ، قم بتشغيل الأمر التالي:

crontab -r

والطريقة الأكثر أمناً للقيام بذلك هي تشغيل الأمر التالي:

crontab -i

يطلب نظام التشغيل التحقق قبل أن يزيل ملف crontab.