LINUXCAMP_TG Telegram 350
Systemd Timer - альтернатива cron

Если ты используешь cron для запуска скриптов по расписанию - пора бы взглянуть в сторону systemd timer. Это часть системы systemd - более новый и с фишками, которых нет в cron. Разберёмся, зачем он нужен и как с ним работать.

Что умеет systemd timer

systemd timer позволяет запускать задачи по расписанию вместо или в дополнение к cron. Отличается он несколькими вещами:

1) Привязан к сервису systemd (можно логировать, отслеживать статус, перезапускать);
2) Логирует всё через journalctl (никаких потерянных логов). Можно быстро проверить, когда скрипт реально запускался и с каким результатом;
3) Флаг "Persistent=true" позволяет выполнить задачу после включения сервера, если она была пропущена во время выключения;
4) Можно задавать зависимости, например, чтобы очистка выполнялась только после поднятия сети, или после других сервисов;
5) Более гибкое расписание такого вида "OnCalendar=Wed 09:44";

Пример запуска скрипта.

Возьмём тот, что был в прошлом посте. Создадим юнит для сервиса:


$ nano /etc/systemd/system/clean-server.service


[Unit]
Description=Автоматическая еженедельная очистка сервера

[Service]
Type=oneshot
ExecStart=/usr/local/bin/clean-server.sh


Создаем таймер:


nano /etc/systemd/system/clean-server.timer


[Unit]
Description=Таймер для еженедельной очистки сервера

[Timer]
OnCalendar=Sun 02:00
Persistent=true

[Install]
WantedBy=timers.target


Активируем:


sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable --now clean-server.timer


Можем проверить статус:


systemctl list-timers | grep clean-server


И посмотреть те самые автоматические логи:


systemctl status cleanup-server.timer
# или
journalctl -u clean-server.timer


Короч, systemd timer - более современный способ управлять задачами по расписанию. Он не заменяет cron полностью, но стоит внимания в большом количестве случаев.

LinuxCamp | #utils #cron
🔥23👍207



tgoop.com/linuxcamp_tg/350
Create:
Last Update:

Systemd Timer - альтернатива cron

Если ты используешь cron для запуска скриптов по расписанию - пора бы взглянуть в сторону systemd timer. Это часть системы systemd - более новый и с фишками, которых нет в cron. Разберёмся, зачем он нужен и как с ним работать.

Что умеет systemd timer

systemd timer позволяет запускать задачи по расписанию вместо или в дополнение к cron. Отличается он несколькими вещами:

1) Привязан к сервису systemd (можно логировать, отслеживать статус, перезапускать);
2) Логирует всё через journalctl (никаких потерянных логов). Можно быстро проверить, когда скрипт реально запускался и с каким результатом;
3) Флаг "Persistent=true" позволяет выполнить задачу после включения сервера, если она была пропущена во время выключения;
4) Можно задавать зависимости, например, чтобы очистка выполнялась только после поднятия сети, или после других сервисов;
5) Более гибкое расписание такого вида "OnCalendar=Wed 09:44";

Пример запуска скрипта.

Возьмём тот, что был в прошлом посте. Создадим юнит для сервиса:


$ nano /etc/systemd/system/clean-server.service


[Unit]
Description=Автоматическая еженедельная очистка сервера

[Service]
Type=oneshot
ExecStart=/usr/local/bin/clean-server.sh


Создаем таймер:


nano /etc/systemd/system/clean-server.timer


[Unit]
Description=Таймер для еженедельной очистки сервера

[Timer]
OnCalendar=Sun 02:00
Persistent=true

[Install]
WantedBy=timers.target


Активируем:


sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable --now clean-server.timer


Можем проверить статус:


systemctl list-timers | grep clean-server


И посмотреть те самые автоматические логи:


systemctl status cleanup-server.timer
# или
journalctl -u clean-server.timer


Короч, systemd timer - более современный способ управлять задачами по расписанию. Он не заменяет cron полностью, но стоит внимания в большом количестве случаев.

LinuxCamp | #utils #cron

BY LinuxCamp | DevOps


Share with your friend now:
tgoop.com/linuxcamp_tg/350

View MORE
Open in Telegram


Telegram News

Date: |

Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment. Clear Hui said the messages, which included urging the disruption of airport operations, were attempts to incite followers to make use of poisonous, corrosive or flammable substances to vandalize police vehicles, and also called on others to make weapons to harm police. Telegram channels fall into two types: According to media reports, the privacy watchdog was considering “blacklisting” some online platforms that have repeatedly posted doxxing information, with sources saying most messages were shared on Telegram.
from us


Telegram LinuxCamp | DevOps
FROM American