با استفاده از cron مي توانيد يك برنامه ريزي كاربردي داشته باشيد؛ وظايف خود را كه به آن cron jobs مي گويند در بازه زماني مشخصي برنامه ريزي كنيد. شما مي توانيد برنامه ريزي خود را تا يك دقيقه ، ساعت ، روزي از ماه ، روزي در هفته يا هر تركيبي از اين موارد انتخاب كنيد. cron jobs معمولا براي انجام عمليات نگهداري سيستم استفاده مي شود. به عنوان مثال يك cron job مي تواند براي اتوماسيون كارهاي تكراري مانند بكاپ گيري از ديتابيس ها ، بروزرساني سيستم با جديدترين وصله هاي امنيتي ، پاك كردن حافظه پنهان ، ارسال ايميل و غيره تنظيم شود.
در اين مقاله چگونگي ليست cron jobs توضيح داده شده است. با ما در شتابان هاست همراه باشيد.
پرونده هاي crontab كاربران بر اساس نام كاربر نامگذاري مي شوند و موقعيت آنها توسط سيستم عامل ها متفاوت است. در توزيع هاي مبتني بر Red hat مانند centOS پرونده هاي crontab در /var/spool/cron
ذخيره مي شوند.
دايركتوري ، در حالي كه پرونده هاي Debian و Ubuntu در اين پرونده بصورت فهرست راهنما/var/spool/cron/crontabs
ذخيره مي شوند.
براي بدست آوردن ليستي از كليه cron jobs مهم با نام كاربري كه با آن وارد سيستم شده ايد ، از crontab استفاده كنيد.
اگر كاربر cron jobs را تنظيم كرده باشد ، محتواي crontabs كاربر روي صفحه نمايش داده مي شود. در غير اين صورت ، اين فرمان چاپ مي شود.
<no crontab for <username
براي ليست ساير cron jobs ، از گزينه -u استفاده كنيد. گزينه اي براي مشخص كردن نام كاربري در انتهاي دستور؛ به عنوان مثال براي ليست كارهاي متفرقه كاربر از عنوان mark استفاده كنيد:
sudo crontab -u mark -l
هر ۶۰۰ پرونده crontab مجوز هايي متعلق به كاربر دارد. كاربران داراي sudo هستند كه مي توانند ليستي از cron jobs هاي كاربران ديگر را مشاهده كنند.
براي اينكه بفهميد كدام كاربر cron jobs ايجاد كرده است :
sudo ls -1 /var/spool/cron/crontabs
خروجي چيزي مانند اين خواهد بود:
root
mark
سيستم ليست كردن cron jobs
/etc/crontab پرونده داخلي /etc/cron.d
دايركتوري فايلهاي crontab در سراسر سيستم هستند كه فقط توسط سرورهاي سيستم قابل ويرايش اند.
استفاده از cat .less يا هر ويرايشگر متن براي مشاهده محتواي پرونده ها:
cat /etc/crontab /etc/cron.d/*
در اكثر توزيع هاي لينوكس مي توانيد اسكريپت ها را نيز در داخل آن قرار دهيد. /etc/cron
{hourly,daily,weekly,monthly}
فهرست ها ، و هر اسكريپت اجرا مي شود.
hour/day/week/month
در هر اسكريپت موجود در اين فهرست ها بايد اجازه اجرا داده شود. در غير اين صورت كار cron اجرا نمي شود. به عنوان مثال ، براي مشاهده همه cron jobs هاي هفتگي كه تايپ مي كنيد:
ls -l /etc/cron.weekly/
-rwxr-xr-x 1 root root 813 Feb 10 2019 man-db
اگر خروجي خالي باشد ، به اين معني است كه هيچ cron هفتگي وجود ندارد.
تايمرهاي سيستم دار فايل هاي واحدي هستند كه به پايان مي رسند. پسوند timer به شما امكان مي دهد واحد خدمات را براساس زمان اجرا كنيد.
براي مشاهده ليستي از تمام تايمرهاي سيستم شده در دستگاه خود ، دستور زير را اجرا كنيد:
systemctl list-timers
NEXT LEFT LAST PASSED UNIT ACTIVATES Sun 2020-02-16 00:00:00 UTC 1h 53min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago logrotate.timer logrotate.service Sun 2020-02-16 00:00:00 UTC 1h 53min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago man-db.timer man-db.service Sun 2020-02-16 03:50:52 UTC 5h 44min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago apt-daily.timer apt-daily.service Sun 2020-02-16 06:12:38 UTC 8h left Sat 2020-02-15 17:04:11 UTC 5h 2min ago apt-daily-upgrade.timer apt-daily-upgrade.service Sun 2020-02-16 18:44:56 UTC 20h left Sat 2020-02-15 17:16:10 UTC 4h 50min ag
اميدواريم از مقاله لذت برده باشيد ما را در شتابان هاست دنبال كنيد.