خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

4 روش برای بررسی اینکه آیا cron روی لینوکس کار می کند یا خیر

cron یک ابزار زمانبندی کار و اتوماسیون فرآیند برای لینوکس است. در اینجا نحوه بررسی اینکه آیا cron به درستی روی سیستم شما کار می کند یا خیر، آمده است.

cron یک زمانبندی کار برای سیستم عامل های لینوکس و یونیکس است. بر روی تمامی توزیع های لینوکس از پیش نصب شده است و برای خودکارسازی کارهای تکراری مناسب ترین است.

برای اینکه cron به درستی کار کند، باید به طور دوره ای بررسی کنید که برنامه به خوبی در سیستم شما اجرا می شود. شما می توانید این کار را با استفاده از چهار روش مختلف انجام دهید، از جمله بررسی وضعیت سرویس cron، بررسی cron log ها، اجرای تست cron job و فهرست کردن فرآیندهای در حال اجرا در سیستم خود.

کرون چیست؟

کنترل کننده کار بی صدا، cron، وظایف سیستم را خودکار و زمان بندی می کند. کاربرانی که محیط‌های نرم‌افزاری را پیکربندی و نگهداری می‌کنند، از cron برای برنامه‌ریزی کارهایی مانند دستورات یا اسکریپت‌های پوسته (که cron job نیز نامیده می‌شوند) استفاده می‌کنند تا به صورت دوره‌ای در زمان‌ها یا فواصل زمانی ثابت اجرا شوند.

cron وظایف نگهداری یا مدیریت سیستم را که ممکن است نیاز به انجام مکرر آنها داشته باشید را خودکار می کند.

چندین پیاده سازی در لینوکس موجود است. نسخه ای که خواهید داشت به توزیع شما بستگی دارد. “Vixie cron” که از نام توسعه‌دهنده اصلی آن، Paul Vixie نامگذاری شده است، رایج و پیش‌فرض در دبیان و اوبونتو است. Arch هیچ نسخه ای از cron به نفع تایمرهای systemd ندارد.

cronie یک چنگال از Vixie cron است که به عنوان یک بسته استاندارد Arch موجود است. برای نصب آن از Pacman استفاده کنید:

sudo pacman -S cronie

سپس شروع کنید و آن را فعال کنید:

sudo systemctl start cronie.service
sudo systemctl enable cronie.service

می‌توانید با جستجوی صفحه مدیریت آن، ببینید کدام نسخه از cron روی سیستم شما نصب شده است:

man cron

چگونه بررسی کنیم که آیا cron روی لینوکس کار می کند یا خیر

در اینجا چند روش وجود دارد که می توانید بررسی کنید که آیا cron به درستی کار می کند:

مطلب مرتبط:   Feren OS در مقابل Zorin OS: کدام یک از این توزیع‌های مبتنی بر اوبونتو بهترین است؟

1. وضعیت سرویس cron را در لینوکس بررسی کنید

یکی از راه‌های بررسی اینکه آیا cron کار می‌کند یا خیر، بررسی وضعیت سرویس cron با اجرای یک دستور پایه لینوکس است. ترمینال لینوکس را با فشار دادن Ctrl + Alt + T باز کنید و از دستور systemctl برای بررسی وضعیت cron استفاده کنید:

sudo systemctl status cron

اگر خروجی زیر را مشاهده کردید، به این معنی است که cron بر روی سیستم شما فعال است و به خوبی اجرا می شود.

وضعیت cron در ترمینال اوبونتو نمایش داده می شود

اما اگر cron مطابق شکل زیر در حالت غیرفعال باشد چه؟

سرویس cron در اوبونتو متوقف شد

شما می توانید سرویس را به این صورت شروع کنید:

sudo systemctl start cron.service

پس از راه اندازی سرویس cron، آن را فعال کنید تا هر بار که سیستم راه اندازی مجدد می شود، شروع به کار کند:

sudo systemctl enable cron.service

2. cron Logs را در لینوکس بررسی کنید

راه دیگر برای بررسی اینکه آیا cron به درستی کار می کند، بررسی فایل های گزارش است. گزارش‌های cron در فهرست /var/log/syslog در لینوکس ذخیره می‌شوند.

syslog پروتکلی است که سیستم‌های لینوکس از آن برای متمرکز کردن گزارش‌های داده رویداد استفاده می‌کنند. سپس برای انجام ممیزی، نظارت، عیب یابی، گزارش دهی و سایر وظایف عملیاتی ضروری فناوری اطلاعات، به گزارش ها دسترسی پیدا می شود.

با اجرای دستور زیر می توانید گزارش های کار cron را در فایل syslog مشاهده کنید:

grep 'cron' /var/log/syslog

خروجی مشابهی خواهید دید که نشان می دهد cron به خوبی اجرا می شود و لاگ های آن در فایل log ذخیره می شوند:

گزارش‌های cron در ترمینال اوبونتو نمایش داده می‌شوند

از آنجایی که پوشه syslog شامل سایر گزارش‌های سیستم به همراه گزارش‌های cron است، بررسی فقط گزارش‌های مربوط به cron در فایل می‌تواند کمی مشکل باشد. می‌توانید با ایجاد یک فایل گزارش جداگانه که فقط ورودی‌های cron را که در فایل syslog ظاهر می‌شوند، این مشکل را حل کنید.

در این مثال، ما از ویرایشگر نانو استفاده می کنیم، اما شما می توانید از هر ویرایشگری که با آن احساس راحتی می کنید استفاده کنید.

فایل زیر را با استفاده از nano باز کنید:

nano /etc/rsyslog.d/50-default.conf

خطی را که با آن شروع می شود پیدا کنید:

#cron.*

با حذف علامت هش (#) این خط را لغو نظر کنید. سپس با فشار دادن Ctrl + X فایل را ذخیره کرده و از آن خارج شوید، سپس Y را فشار داده و Enter را بزنید.

مطلب مرتبط:   چرا جوهر را در صفحه نمایش شکسته خود می بینید؟

با صدور این دستور سرویس rsyslog را مجددا راه اندازی کنید:

sudo service rsyslog restart

اکنون گزارش هایی را در فایل cron.log که در پوشه /var/log قرار دارد دریافت خواهید کرد.

اگر ترمینال شما نتواند گزارشی را واکشی کند، ممکن است به این معنی باشد که cron در حال اجرا نیست. در آن صورت، تأیید کنید که آیا cron کار می کند یا از روش های دیگر استفاده نمی کند.

3. اجرای cron Job در لینوکس

شما همچنین می توانید با ایجاد یک کار تست cron و اجرای آن بررسی کنید که آیا cron کار می کند یا خیر. اگر کار در انجام وظیفه موفق شد، به این معنی است که کارش خوب است.

ابتدا باید یک اسکریپت Bash ایجاد کنید. برنامه نویسی Bash به شما امکان می دهد کارهای روزمره را در لینوکس خودکار کنید.

بیایید یک اسکریپت Bash ایجاد کنیم که “cronjob من در حال کار است!” در یک فایل TXT برای ایجاد فایل، ابتدا دایرکتوری فعلی خود را با استفاده از این دستور پیدا کنید:

pwd

با استفاده از دستور لمسی یک فایل در دایرکتوری فعلی ایجاد کنید:

touch file.txt

پس از این، یک فایل Bash با استفاده از nano ایجاد کنید:

nano script.sh

مطالب زیر را به فایل اضافه کنید:

#! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt

اسکریپت bash.sh برای cronjob ایجاد شده است

مطمئن شوید که محل صحیح فایل متنی که ایجاد کرده اید را ارائه کرده اید. با زدن Ctrl + X و سپس Y فایل را ذخیره کرده و از آن خارج شده و Enter را بزنید.

به اسکریپت Bash مجوز اجرا بدهید:

chmod +x script.sh

حالا یک کار cron برای اجرای اسکریپت ایجاد کنید. برای انجام این کار، فایل crontab را باز کنید:

crontab -e

خط زیر را در انتهای فایل وارد کنید.

* * * * * /path/to/script.sh

پنج ستاره با زمان اجرا مطابقت دارند، که در آن ستاره اول نشان دهنده دقیقه (0-59)، ستاره دوم نشان دهنده ساعت است (در زمان 24 ساعته، بنابراین ساعت 13:00 ساعت 13 است، نیمه شب از ساعت 0 شروع می شود)، ستاره سوم به معنی روز است (0-7، 0 و 7 یکشنبه)، ستاره چهارم نشان دهنده ماه و آخرین ستاره نشان دهنده سال است.

مطلب مرتبط:   آیا اپل واچ شما شارژ نمی شود؟ در اینجا چه باید کرد

نام فایل اجرایی و مسیر آن نیز در فایل ذکر شده است.

پس از ذخیره و بستن فایل، پیام crontab: installing new crontab را در ترمینال مشاهده خواهید کرد.

برای بررسی اینکه آیا کار cron کار می کند یا نه، به دایرکتوری file.txt بروید و با استفاده از cat محتویات آن را در ترمینال چاپ کنید:

cat file.txt

ترمینال اوبونتو محتویات یک فایل متنی را نمایش می دهد

این نشان می دهد که cron به خوبی کار می کند.

4. فرآیندهای در حال اجرا در لینوکس را بررسی کنید

راه دیگری که می توانید بررسی کنید که آیا cron daemon کار می کند یا خیر، فهرست کردن فرآیندهای در حال اجرا در سیستم شما است. با استفاده از دستور ps می توانید به این هدف برسید. شبح cron در خروجی به صورت crond نشان داده می شود.

ps aux | grep cron

ترمینال اوبونتو نشان می دهد که فرآیند crond در حال اجرا است

این تأیید می کند که فرآیند cron در سیستم لینوکس شما اجرا می شود.

خودکارسازی و برنامه ریزی وظایف سیستم با cron

cron یکی از حیاتی ترین ابزارهای کاربردی در لینوکس است که به سیستم اجازه می دهد تا به طور موثر عمل کند. گاهی اوقات هنگام عیب یابی مشکلات سیستم باید بررسی کنید که آیا cron کار می کند یا خیر.

شما می توانید با بررسی cron log یا مشاهده فرآیندهای در حال اجرا در سیستم خود به این امر دست یابید. همچنین می توانید وضعیت cron را با استفاده از ابزار systemctl بررسی کنید. علاوه بر این، اجرای یک آزمایش cron job همچنین می تواند به شما بگوید که آیا سرویس در حال اجرا است یا خیر.

عملکرد روان cron به شما امکان می دهد کارهای روزمره سیستم را خودکار و برنامه ریزی کنید. اکثر کارهای cron به طور خودکار توسط برنامه های نصب شده ایجاد می شوند. خودکارسازی و زمان‌بندی وظایف، عملکرد کلی سیستم را بهبود می‌بخشد و آن را سالم نگه می‌دارد.