в этой лекции мы поговорим о chron, который является одной из самых полезных утилит, когда дело
доходит до администрирования Linux, он позволяет вам планировать комментарии или задачи, также известные как chrome
jobs, в определенное время, работает как демон и используется для автоматизации повторяющихся задач,
такие как резервное копирование мониторинга использования дискового пространства при обновлении системы с последними версиями приложений
отправки сообщений электронной почты ротацией логов и так далее, я думаю, что нет Linux - сервера, который не работает , по
крайней мере несколько коленчатых заданий на вкладке слова коронки имеет три различное значение текстового
файла, содержит текущие задания пользователя, называется вкладкой кроны пользователя, есть такой файл для каждого
пользователя, а в ubuntu файлы расположены в косой черте var spool вкладки кроны cron, конечно, только root
может получить доступ к каталогу, и есть команда под названием вкладка cron, используемая для управления файлы содержимого
это комментарий, а также есть файл конфигурации
для общесистемных заданий cron, называемый crontab, расположенный в ctc, в
этом есть два типа системы заданий Chrome - широкие и индивидуальные пользовательские задания cron,
давайте возьмем их по одному и начнем с отдельных заданий chrome, у каждого пользователя есть файл контактов,
который является сокращением от таблицы короны, где указаны все запланированные задания cron этого пользователя,
эти файлы находятся в подкаталоге каталога var spool chron точное местоположение
может зависеть от дистрибутива Linux, являющегося текстовыми файлами, вы можете редактировать файлы типа Chrome вручную
с помощью текстового редактора, даже если они не предназначены для редактирования напрямую, рекомендуется
использовать команду crontab, вместо этого откроется файл, используя ваш предпочтительный текстовый редактор или
текстовый редактор по умолчанию, и проверьте структуру файлов при выходе, давайте продолжим и погрузимся в команду crontab,
чтобы отобразить содержимое файла crontab текущего пользователя, запустите crontab minuscell
в начале, у пользователей нет контактов для редактирования файл контактов текущего пользователя запустите crontab
минус c, он исходит от редактирования, вам будет предложено выбрать один из редакторов,
если нет набора редакторов по умолчанию, я выбираю veeam
обратите внимание, что строки, начинающиеся со знака решетки, являются комментариями, каждая задача для запуска
должна быть определена через одну строку, состоящую из шести полей, разделенных пробелом,
первые пять полей определяют, когда задача будет запущена, а последнее поле представляет команда или
сценарий запускают задания хрома могут быть запланированы для запуска по минутам, часам, дням месяца, месяцам, дням
недели или любой их комбинации, вам не нужно запоминать поля времени, потому что они
описаны в последней строке минуты час день месяц месяц день недели и комментария
первое поле указывает на ту же минуту, второй час затем идет день месяца месяц
день недели и, наконец, комментарий, если для конкретного поля используется звездочка
звездой это означает всегда или любое значение для этого поля, например, звездочка
в поле дня или недели означает каждый день или каждую неделю, обратите внимание, что минимальная единица времени, используемая
cron, - это минута, если вы хотите запланировать выполнение задачи каждые 15 секунд тогда ты c annot use chron
создать сценарий bash с белым циклом и запустить сценарий вместо этого. Давайте попробуем несколько примеров.
Предположим, вы хотите запускать сценарий резервного копирования каждый день в 6 часов утра, чтобы в нулевую минуту в 6 часов утра
и три звезды и комментарий для пример корневых резервных данных6 это путь к сценарию bash, у
меня также есть некоторые замечания, что час указан в 24-часовом формате, поэтому между 0 и 23 не используйте pm
или am, если вы хотите запустить команду в 16:00, вы напишите 16 в поле часа, это поле часа,
день недели, который является последним полем времени, которое указывает, что время может быть от 0 до 7,
где 0 равно 7, равно воскресенье, поэтому, если я хочу, чтобы сценарий резервного копирования запускался только по воскресеньям в 6 часов утра
я напишу 0 или 7 в этом поле, как это сценарий будет запускаться по воскресеньям в 6 часов утра, давайте посмотрим
другой пример, предположим, вы хотите запустить сценарий, который отслеживает свободное место на диске каждую минуту,
поэтому каждую минуту пропускайте звездочку для минутная звездочка для часа другие звездочки
и путь к скрипту, например, chec k пробел точка s6 он будет запускаться каждую минуту
еще один пример, если вы хотите указать список дискретных значений для повторения, используйте
оператор запятой, например, я хочу запустить задачу в 4 6 и 10 утра, поэтому минута будет 0
и через поле часа я пишу 4 запятую 6 запятую 10 еще одно, если вы хотите указать диапазон
значений, используйте оператор дефиса, скажем, я хочу, чтобы задача выполнялась в будние дни с 9
до 17 часов один раз в час, поэтому в рабочие дни и часы и это означает
минуту, а теперь интервал времени 9 дефис 17 это означает между 9 и 17 или 17 часами
каждый день месяца каждый месяц, а в последнем поле я пишу один дефис пять, это означает с понедельника
по пятницу и путь к комментарию или к сценарию, например, root, я не знаю fire
not s6, а еще один, вы также можете использовать оператор косой черты, чтобы указать значения, которые будут повторяться в
течение определенного интервала, например, если у вас есть косая черта три в поле дня, это означает, что
действие будет выполняться каждые три дня попробуем такой пример 20 четыре запятая двадцать одна
звездочка косая черта три У меня есть три поля, поэтому мне нужно еще два, и путь к скрипту
в этом примере задача будет запускаться каждые три дня на 4 и 21 на 10 минуте
. Также используется несколько макросов короны. для указания наиболее часто используемых интервалов
ежегодно или ежегодно будет запускать указанный комментарий один раз в год 1 января в полночь,
как это добавляется ежегодно, а путь к сценарию с новым годом ежемесячно
запускает указанную задачу один раз в месяц в полночь в первый день месяца
и еженедельно запускает указанную задачу один раз в неделю в полночь на воскресенье
и ежедневно запускает указанную задачу один раз в день в полночь ежедневно
и ежечасно запускает указанную задачу один раз в час в начале часа и, наконец, бежит перезагрузки
указанная задача во время загрузки
давайте посмотрим на практический пример, я хочу добавлять текущую дату и время в файл каждые две минуты,
сначала я закомментирую все строки, которые я написал,
они были просто примерами, и я пишу звездную косую черту 2 это означает каждые 2 минуты,
а затем 4 звезды, и теперь дата комментария вдвое больше, чем знак, и путь к файлу,
дата и время, точка txt, и я сохраняю файл и выхожу, чтобы увидеть, что он действительно работает,
я отображать файл журнала chrome в реальном времени, используя tail минус f, поэтому tail минус f var log syslog
это файл журнала chrome на ubuntu на centos is vaglog cron это имя файла на centos,
и мы вскоре увидим, как работает cron команду, которую
я жду не более двух минут, и мы видим эту строку, что хром-задача
была выполнена, я также могу отобразить содержимое файла, созданного cron, поэтому cat tmp
date and time dot txt, и мы видим там дату до удалите текущий файл вкладки, запустите вкладку cron minus r,
я не удаляю ее, обратите внимание, что root может редактировать список или удалять вкладку короны другого пользователя,
используя опцию minus view в имени пользователя, например, я становлюсь root и
создаю текущую вкладку для студент пользователь так sudo su я в порядке и текущая вкладка минус e минус u
студент,
и она открыла th Вкладка с короной студента-пользователя, и я добавляю что-то случайным образом,
я сохраняю задание с короной, а затем удаляю его,
поэтому crontab минус r минус u студент,
теперь у пользователя student нет содержимого, важное замечание - это хронический секс и использует свои
собственные переменные среды, переменная пути имеет особое значение, потому что, если команда, которую вы
выполняете, отсутствует в указанном хромом пути, вы получите ошибку, и это очень часто
для новичков, используйте абсолютный путь для комментария или сценария для выполнения имейте это в виду, root
также может установить некоторые ограничения в отношении того, какие пользователи имеют доступ к их собственным файлам вкладок Chrome.
man contact, посмотрите на этот абзац, есть два важных файла cron.allow
и поведение deny эти файлы будут решать, какие пользователям разрешено использовать команду content, так
как вы можете видеть, что планирование заданий chrome легко, однако есть несколько веб-
генераторов синтаксиса crontab, которые делают это еще проще, два таких веб-сайта: crontab.guru и
c rontabminusgenerator.org, вы можете поиграть, чтобы изучить примеры cronjobs,
просто введите желаемые даты и время, и он мгновенно сгенерирует для вас строку табуляции
в конце, позвольте мне рассказать вам несколько слов об общесистемных заданиях Chrome,
помимо заданий, прокручиваемых пользователем, которые мы я только что видел, что есть некоторые системные задания, которые будут
выполняться так же хорошо, как это работает, вы просто перемещаете свои скрипты в некоторые каталоги,
это каталоги, слэш gtc ​​проводит ежедневно ежечасно, ежемесячно и еженедельно, и скрипты будут
выполняться каждый час, день, неделя или месяц, например, если я перемещаю свой скрипт на ежечасное
выполнение, скрипт будет выполняться ежечасно, тогда на вкладке etc указано, когда именно
будут запускаться эти хронические задания, например, все скрипты внутри каталога cron.weekly
будут запущены в воскресенье в 6:47, сканирование задания предназначены для серверов или машин, которые
работают постоянно, если система не работает, когда задание cron запланировано для запуска, задача потеряна,
она не будет запущена, когда машина запускается в nex В лекции мы поговорим об анахроне, который можно
использовать для периодического выполнения комментариев, не предполагая, что машина работает постоянно.