Төлем әдістері Abuse

Linux жүйесіндегі Cron: бұл не?

26.02.2023, 13:13

Cron - Linux операциялық жүйесіндегі тапсырмаларды жоспарлау утилитасы. Ол сценарийлерді немесе пәрмендерді белгілі бір уақытта, белгілі бір жиілікте немесе белгілі бір оқиғаларда автоматты түрде іске қосуға мүмкіндік береді.

Қалай пайдалануға болады?

Cron пайдалану үшін тапсырмалар тізімі мен оларды орындау қажет уақыт аралығын қамтитын crontab файлын жасау керек. Crontab ішіндегі әрбір тапсырма бос орындармен бөлінген бес өрістен тұратын жол:

 * * * * * command_to_execute - - - - - | | | | | | | | | +----- day of the week (0 - 6) (Sunday = 0 or 7) | | | +------- month (1 - 12) | | +--------- day of the month (1 - 31) | +----------- hour (0 - 23) +------------- minutes (0 - 59)

* белгісі кез келген мәнді білдіреді, мысалы, минут өрісінде * болса, тапсырма минут сайын орындалады. Өріс үшін белгілі бір мәнді орнатқыңыз келсе, мысалы, күн сайын таңғы сағат 3-те, онда 0 3 * * * жазуыңыз керек.

crontab файлын жасау немесе өзгерту үшін crontab -e пәрменін пайдаланыңыз. Әрбір пайдаланушының өзінің crontab файлы, сондай-ақ түбір ретінде орындалатын тапсырмалары бар жүйелік /etc/crontab файлы болуы мүмкін.

Docker контейнерлерінде тапсырмаларды орындауға мүмкіндік беретін cronjob пәрмені бар. Ол crontab сияқты жұмыс істейді, бірақ тапсырмаларды хост жүйесінің орнына контейнер ішінде іске қосуға болады.

Cron пайдалану: қадамдық алгоритм

Linux жүйесінде Cron пайдалануды бастау үшін мына қадамдарды орындаңыз:

1. Терминалды ашыңыз және crontab -e деп теріңіз. Бұл ағымдағы пайдаланушы үшін crontab файлын ашады.

2. Жоғарыда сипатталған өріс пішіміне сәйкес тапсырманы crontab файлына қосыңыз. Мысалы, every_hour.sh сценарийін сағат сайын іске қосқыңыз келсе, 0 * * * * /path/to/every_hour.sh жолын қосыңыз.

3. Өзгерістерді сақтап, файлды жабыңыз.

4. crontab -l пәрмені арқылы тапсырманың crontab бағдарламасына қосылғанын тексеріңіз. Бұл crontab ішіне қосылған барлық тапсырмаларды тізімдейді.

5. tail -f /var/log/syslog пәрмені арқылы тапсырманың жоспарланғандай орындалып жатқанын тексеріңіз. Тапсырманы орындауға қатысты нәтижені көресіз.

6. Егер тапсырманы crontab ішінен жойғыңыз келсе, crontab -r пәрменін пайдаланыңыз.

Кейбір маңызды сәттерді ескеру қажет:

  • Сіз crontab бағдарламасына сценарийлер мен пәрмендерді қоса аласыз. Бірақ сценарийді орындағыңыз келсе, оның орындау құқықтары бар екеніне көз жеткізіңіз ( chmod +x /path/to/script.sh ).
  • Тапсырманың түбірлік артықшылықтармен іске қосылуын қаласаңыз, түбірлік пайдаланушы үшін crontab файлын ашу үшін sudo crontab -e пәрменін пайдаланыңыз.
  • Сіз орындайтын пәрмендер мен сценарийлердің дұрыс жерде екенін және дұрыс оқу және орындау рұқсаттары бар екенін тексеріңіз.

crontab бағдарламасында көрсетілген уақыт Cron іске қосылған сервердегі уақытқа сәйкес келетінін ескеріңіз. Қашықтағы серверді пайдаланып жатсаңыз, сервер уақыты дұрыс орнатылғанын тексеріңіз.