Как да изпълните crontab по време на зареждане на системата

Kak Da Izp Lnite Crontab Po Vreme Na Zarezdane Na Sistemata



Търсите ли решение за стартиране на crontab при всяко рестартиране на вашия сървър или система? Това е възможно с помощта на опцията @reboot. Начинът по подразбиране за изпълнение на задания на cron е указване на тяхната дата и час, последвано от пътя до командата за изпълнение. Същата концепция се използва при дефиниране на команда, която трябва да се изпълнява всеки път, когато сървърът се рестартира. Единствената разлика е, че в този случай не посочваме дата и час. Вместо това използваме @рестартиране последван от пътя до командата. Нека да видим как работи това.

Как да планирате crontab да се изпълнява по време на зареждане на системата

Linux и Unix системите се доставят предварително инсталирани с cron помощна програма, програма за планиране на задачи, която улеснява планирането на задачи във файла crontab. Същата помощна програма е достъпна за macOS. Синтаксисът за планиране на задачи на дадени интервали е даден по-долу:

Мин. час, ден от месеца, месец, ден от седмицата [ команда ]







Например, можете да използвате следната команда, ако трябва да изпълнявате скрипт за архивиране на всеки 20 минути от 15:00 часа. до 16:00ч. ежедневно.



*/ двадесет петнадесет - 16 * * * / път / да се / backup.sh



Предишната команда работи, когато трябва да изпълните задача в определен момент, но какво ще стане, ако имате нужда от същата команда, която да се изпълнява след всяко зареждане?





За да зададете същата команда да се изпълнява, когато системата се рестартира, заменете полетата за дата и час с @reboot. Новата команда ще бъде:

@ рестартирайте / път / да се / backup.sh



В предишната команда, @рестартиране указва, че cron трябва да изпълни указаната команда след всяко зареждане. Отново трябва да добавим командата към файла crontab.

Използвайте следната команда, за да отворите файла crontab и да го редактирате, за да добавите нашата нова работа.

crontab

Обърнете внимание, че създаваме заданието за текущия потребител. Ако трябва да планирате задачата за различен потребител, например потребител с име linuxhint1 , следната команда ще бъде:

crontab -във linuxhint1

След като файлът crontab се отвори, добавете командата в долния ред. Запазете файла и излезте.

Също така имайте предвид, че използваме a нано редактор, вашият редактор може да е различен, но командата е същата.

Ако заданието е планирано успешно, трябва да получите съобщение като показаното на следното изображение, за да посочите успешна инсталация на новия crontab:

Все пак можете да използвате следната команда, за да изброите планираните задачи.

crontab

Ако вече не желаете да изпълнявате командата по време на зареждане, можете да я премахнете, като редактирате файла crontab или използвате командата, предоставена по-долу. Имайте предвид, че следната команда изтрива всички планирани задачи. Ако това не е това, което искате да постигнете, превъртете надолу в crontab и ръчно изтрийте заданието с помощта на редактор.

crontab

@reboot изпълнява команда веднага след времето за зареждане. Можете обаче да зададете период на заспиване, преди да се изпълни командата. Например, ако трябва командата да се изпълни 10 минути след зареждане, трябва да зададете времето в секунди.

Командата ще бъде.

@ рестартирайте сън 600 / път / да се / backup.sh

600 представлява 10 минути, изразени в секунди, и сън е опцията, която да използвате при указване на времето преди изпълнение.

Нашият нов crontab файл ще бъде настроен, както е показано по-долу:

Следващият път, когато рестартирате сървъра си, скриптът за архивиране или командата set ще се изпълни след 10 минути.

И накрая, можем да проверим дали планираната задача ще се изпълни, като проверим състоянието на crond услуга . Трябва да бъде активен . Използвайте следната команда, за да проверите състоянието му:

sudo systemctl статус cron.service

Готови сте, ако получите изход като следния изход:

Ако състоянието на crond не е активно, можете да го активирате, като използвате следната команда, след което проверете състоянието:

sudo systemctl активирайте cron.service

Това е. Вашата команда ще се изпълни по време на зареждане.

Заключение

Знанието как да планирате задачи по време на зареждане е от съществено значение за администраторите на Linux. За щастие, това ръководство обхваща изчерпателно практическо ръководство за това как да направите това с помощта на помощната програма cron на Linux. Освен това обсъдихме как можете да зададете време за заспиване, преди командата да се изпълни.