كتيبات سطر الأوامر

Man » دليل crontab عبر الإنترنت - توثيق مفصل عبر الإنترنت لصفحة دليل crontab

🌍
crontab - إدارة ملفات crontab للمستخدمين (Vixie Cron)

ملخص

crontab [-h]

crontab [-u user] [-n] file

crontab [-u user] [-i] {-e | -l | -r}

الوصف

crontab هو البرنامج المستخدم لتثبيت أو إزالة أو سرد الجداول المستخدمة لتشغيل برنامج cron(8) في Vixie Cron. يمكن لكل مستخدم أن يكون لديه ملف crontab خاص به، وعلى الرغم من أنها ملفات في /var/spool/cron/crontabs، إلا أنها لا يُقصد تحريرها مباشرةً.

إذا كان الملف /etc/cron.allow موجودًا، فيجب أن تكون مدرجًا (مستخدم واحد لكل سطر) فيه حتى تتمكن من استخدام هذا الأمر. إذا لم يكن الملف /etc/cron.allow موجودًا ولكن كان الملف /etc/cron.deny موجودًا، فيجب ألا تكون مدرجًا في الملف /etc/cron.deny حتى تتمكن من استخدام هذا الأمر.

يرجى التحقق من أن أذونات الملف /etc/cron.allow تجعله قابلاً للقراءة من قبل المستخدمين المسموح لهم. على سبيل المثال، يجب أن تكون الأذونات rw- r-- r-- (ثماني 644) جيدة.

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

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

بغض النظر عن وجود أي من هذه الملفات، يُسمح دائمًا للمستخدم الإداري الجذر بإعداد crontab. بالنسبة لأنظمة Debian القياسية، يمكن لجميع المستخدمين استخدام هذا الأمر.

إذا تم إعطاء الخيار -h، فإن crontab يعرض رسالة مساعدة ويخرج على الفور.

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

يتم استخدام الشكل الأول من هذا الأمر لتثبيت ملف crontab جديد من ملف معين أو من الإدخال القياسي إذا تم إعطاء اسم الملف الزائف "-".

إذا تم إعطاء الخيار -n، فهذا يعني "التشغيل التجريبي": يفحص crontab ملف crontab "الخاص بك" بحثًا عن الأخطاء النحوية، ويخرج رسالة نجاح إذا كان بناء الجملة صحيحًا، ولكن لا يتم كتابة أي شيء إلى أي ملف crontab.

يتسبب الخيار -l في عرض ملف crontab الحالي على الإخراج القياسي. انظر الملاحظة الموجودة في القسم المسمى "خاص بـ DEBIAN" أدناه.

يتسبب الخيار -r في إزالة ملف crontab الحالي.

يتم استخدام الخيار -e لتحرير ملف crontab الحالي باستخدام sensible-editor(1). بعد الخروج من المحرر، سيتم تثبيت ملف crontab المعدل تلقائيًا.


يُعدِّل الخيار -i الخيار -r بحيث يطلب من المستخدم إدخال استجابة 'y/Y' قبل حذف جدول المهام (crontab) فعليًا.

خاص بالتوزيعة دبيان

السلوك الافتراضي للأمر crontab -l هو عرض السطرين "لا تقم بتحرير هذا الملف" الموجودين في بداية جدول المهام (crontab) عند تثبيته. المشكلة هي أن هذا يجعل التسلسل

crontab -l | crontab

غير قابل للتكرار — حيث يتم إضافة نسخ من الرأس بشكل متكرر. وهذا يسبب مشاكل للبرامج النصية التي تستخدم sed لتحرير جدول المهام (crontab). لذلك، تم تغيير السلوك الافتراضي للخيار -l بحيث لا يتم إخراج هذا الرأس. يمكنك الحصول على السلوك الأصلي عن طريق تعيين متغير البيئة CRONTAB_NOHEADER إلى 'N'، مما سيؤدي إلى إخراج الأمر crontab -l للرأس الإضافي.

إبراز مخرجات الأمر crontab -l

يُخرج الأمر crontab -l نصًا عاديًا. عندما يدعم الجهاز الطرفي تسلسلات ANSI لتلوين هذا النص، يمكنك إبراز المخرجات عن طريق استدعاء: crontab -l | spc -t crontab عندما يكون لون خلفية الجهاز الطرفي داكنًا، أو crontab -l | spc -t crontab-light عندما يكون لون الخلفية فاتحًا.

يمكن تعديل نظام التلوين باستخدام إصدارات مخصصة من الملفات /etc/supercat/spcrc-crontab*.

يمكنك أيضًا تلوين هذا النص باستخدام البرنامج batcat(1) المتوفر في الحزمة bat، على سبيل المثال:

crontab -l | batcat --language Crontab

انظر أيضًا

^ rontab(5)، cron(8)، spc(1)

الملفات

^ etc/cron.allow، /etc/cron.deny يجب أن يكون الملفان /etc/cron.allow و/etc/cron.deny، إذا كانا موجودين، قابلين للقراءة من قبل الجميع، أو قابلين للقراءة من قبل المجموعة crontab. إذا لم يكن الأمر كذلك، فسيقوم الأمر cron(8) بحظر الوصول إلى جميع المستخدمين حتى يتم إصلاح الأذونات.

^ var/spool/cron/crontabs يوجد ملف لكل مستخدم من مستخدمي جدول المهام (crontab) في الدليل /var/spool/cron/crontabs. لا يُسمح للمستخدمين بتحرير الملفات الموجودة في هذا الدليل مباشرةً لضمان أن المستخدمين المسموح لهم فقط بتشغيل المهام الدورية هم من يمكنهم إضافتها، وأن يتم كتابة جداول المهام (crontabs) الصحيحة نحويًا فقط هناك. يتم تطبيق ذلك عن طريق جعل الدليل قابلاً للكتابة فقط بواسطة مجموعة crontab وتكوين أمر crontab مع تعيين بت المجموعة (setgid bit) لتلك المجموعة المحددة.

المعايير

يتوافق أمر crontab مع معيار IEEE Std1003.2-1992 ("POSIX"). يختلف بناء جملة الأمر الجديد هذا عن الإصدارات السابقة من Vixie Cron، وكذلك عن بناء جملة SVR3 الكلاسيكي.

التشخيص

يظهر رسالة استخدام مفيدة إذا قمت بتشغيله بسطر أوامر غير صالح.

يتطلب الأمر cron(8) أن ينتهي كل إدخال في جدول المهام (crontab) بحرف سطر جديد. إذا كان الإدخال الأخير في جدول المهام (crontab) يفتقد إلى حرف السطر الجديد، فسيعتبر الأمر cron(8) أن جدول المهام (crontab) (على الأقل جزئيًا) معطوبًا وسيرفض تثبيته.

يتم تسمية الملفات الموجودة في /var/spool/cron/crontabs بناءً على اسم حساب المستخدم. لن يتم تشغيل مهام جدول المهام (crontab) للمستخدمين الذين تم تغيير أسماء حساباتهم، سواء كان ذلك بسبب تغييرات في النظام المحلي أو لأنها تتم إدارتها من خلال قاعدة بيانات مستخدمين مركزية (خارجية للنظام، على سبيل المثال، دليل LDAP).


المؤلفون

بول فيكسي <_> كتب صفحة الدليل هذه (عام 1994).

ستيف غرينلاند <_> قام بصيانة الحزمة (1996-2005).

خافيير فرنانديز-سانجوينو بينيا <_> قام بصيانة الحزمة (2005-2014).

كريستيان كاستنر <_> قام بصيانة الحزمة (2010-2016).

جورج خازندار <_> قام بصيانة الحزمة (2022-2024).

حقوق النشر

حقوق النشر © 1994 بول فيكسي

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

منذ عام 1994، تم إجراء العديد من التعديلات على صفحة الدليل هذه، كتبها مطورو دبيان الذين قاموا بصيانة cron(TM)؛ القائمة أعلاه هي قائمة مختصرة، ويمكن العثور على مزيد من المعلومات في الملف /usr/share/doc/cron/copyright.