Как просмотреть задания Cron в Linux

12 set 2022 2 min di lettura
Как просмотреть задания Cron в Linux
Indice dei contenuti

Введение

Cron — это демон планирования, который позволяет планировать выполнение задач через определенные промежутки времени. Эти задачи называются заданиями cron и могут быть запланированы для запуска по минутам, часам, дням месяца, месяцам, дням недели или любой их комбинации.

Задания Cron обычно используются для выполнения задач по обслуживанию системы. Например, вы можете настроить задание cron для автоматизации повторяющихся задач, таких какрезервное копирование баз данных, обновление системы с помощью последних исправлений безопасности, очистка кэша, отправка электронных писем и т. д.

В этой статье объясняется, как составить список заданий Cron.

Список заданий Cron пользователей

Пользовательские файлы crontab называются по имени пользователя, и их расположение зависит от операционной системы. В дистрибутивах на основе Red Hat, таких как CentOS, файлы crontab хранятся в каталоге /var/spool/cron, а в Debian и Ubuntu файлы хранятся в каталоге /var/spool/cron/crontabs.

Чтобы получить список всех заданий Cron для пользователя, под которым вы сейчас вошли, используйте команду crontab:

crontab -l

Если пользователь настроил задание cron, содержимое пользовательских crontab будет отображаться на экране. В противном случае команда не напечатает no crontab for <username>.

Чтобы просмотреть задания cron других пользователей, используйте параметр -u, чтобы указать имя пользователя в конце команды. Например, чтобы перечислить задания cron пользователя с именем «alice», вы должны использовать:

sudo crontab -u alice -l

Каждый пользовательский файл crontab имеет 600 разрешений и принадлежит пользователю. Только root и пользователи с привилегиями sudo могут просматривать задания cron других пользователей.

Чтобы узнать, какие пользователи создали задания cron, укажите содержимое каталога spool как root или sudo:

sudo ls -1 /var/spool/cron/crontabs

Вывод будет выглядеть следующим образом:

root
 alice

Список заданий Cron в системе

Файл /etc/crontab и файлы в каталоге /etc/cron.d являются общесистемными файлами crontab, которые могут редактировать только системные администраторы.

Используйте cat, less или любой текстовый редактор для просмотра содержимого файлов:

cat /etc/crontab /etc/cron.d/*

В большинстве дистрибутивов Linux вы также можете поместить сценарии в каталоги /etc/cron.{hourly,daily,weekly,monthly}, и сценарии будут запускаться каждый hour/day/week/month.

Любой сценарий в этих каталогах должен иметь разрешение на выполнение. В противном случае задание cron не будет запущено.

Например, чтобы просмотреть все еженедельные задания Cron, введите:

ls -l /etc/cron.weekly/
-rwxr-xr-x 1 root root 811 Feb 21 2020 man-db

Если вывод пуст, это означает, что еженедельных заданий cron нет.

Системный таймер

Таймеры systemd — это юнит-файлы, которые заканчиваются суффиксом *.timer и позволяют запускать служебные юниты в зависимости от времени.

В дистрибутивах, использующих systemd в качестве системы инициализации, таймеры используются как альтернатива стандартному демону cron.

Чтобы просмотреть список всех таймеров systemd на вашем компьютере, выполните следующую команду:

systemctl list-timers
NEXT LEFT LAST PASSED UNIT ACTIVATES
 Sat 2020-02-22 18:22:30 CET 17min left Sat 2020-02-22 17:22:29 CET 42min ago dnf-makecache.timer dnf-makecache.service
 Sun 2020-02-23 00:00:00 CET 5h 55min left Sat 2020-02-22 16:11:58 CET 1h 52min ago unbound-anchor.timer unbound-anchor.service
 Sun 2020-02-23 16:26:55 CET 22h left Sat 2020-02-22 16:26:55 CET 1h 37min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
 Mon 2020-02-24 00:00:00 CET 1 day 5h left Sat 2020-02-22 16:11:58 CET 1h 52min ago fstrim.timer fstrim.service

Вывод

Мы показали вам, как составить список заданий Cron и системных таймеров.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.