LINUX.ORG.RU

Расскажите, пожалуйста, о вашем опыте замены cron на systemd

 ,


0

3

Что стало лучше? Какие ждут подводные камни?

Мне понравилась, что таймеры устанавливаются как отдельные файлы, а значит их как отдельные файлы будет проще устанавливать при помощи пакетного менеджера, чем добавлять строчку в ОБЩИЙ файл.

★★☆

Последнее исправление: Einstok_Fair (всего исправлений: 5)
Ответ на: комментарий от deep-purple

# /etc/systemd/system/my.timer

[Unit]
Description=Run my service every 15-30 minutes
Requires=my.service
[Timer]
Unit=my.service
OnUnitInactiveSec=15min
RandomizedDelaySec=15min
AccuracySec=1s
[Install]
WantedBy=timers.target

Einstok_Fair ★★☆
() автор топика
Последнее исправление: Einstok_Fair (всего исправлений: 1)
  1. ставишь systemd-cron
  2. все твои задания в кроне автоматически конвертируются в таймеры
  3. ????
  4. PROFIT
eternal_sorrow ★★★★★
()

На мой вкус, это не совсем равнозначные замены. Стоит сравнивать другую СИ + крон/анакрон с системд. Если интересуешься исключительно в контексте запуска чего-то по таймеру, то мне, как человеку, который недавно перевел одну пекарню на арч, системд как запускальщик понравился тем, что

  • возможно без лишних проблем привязать запуск нужных юнитов к нужным событиям или другим юнитам,
  • суперудобно смотреть логи

и не понравился тем, что

  • синтаксис упоротый, хотя привыкнуть можно,
  • иногда из-за упомянутых выше привязок между юнитами не совсем понятно, где что-то пошло не так, но логгирование помогает.

В целом для меня системд выглядит лучше при прочих равных (если не иметь уже заготовленных скриптов и шаблонов для основной СИ и для логгирования автозапуска программ через крон).

PawsOnFire
()

Что стало лучше?

Лучше или хуже не стало, стало иначе.

Какие ждут подводные камни?

Никаких.

Но это было давно…

 % uname -srm
FreeBSD 12.1-RELEASE-p2 amd64

Уронили Linux на пол, оторвали ему лапу, утоплю его в параше, потому что GNU не наши.

mord0d ★★★★★
()
Ответ на: комментарий от deep-purple

А разве кронтаб не просто для совместимости остался?

systemd конвертирует их во временные таймеры автоматически (как и /etc/fstab в mount-юниты), если ничего не поменялось с тех пор. Есть какие-то утилиты для конвертации в перзистентные таймеры, там синтаксис такой, что можно и ручками.

mord0d ★★★★★
()

сменил cron на systemd-cron за полчасика. все заработало «из каропки». смены считай даже не заметил.
системд-скрипты мне прощее заходят чем упоротый дизайн запуска кронтаба с непредсказуемыми подводными камнями.

pfg ★★★★★
()

Однако, подводные камни

Если у тебя таймер с рандомным запуском, то этот рандомная задержка будет пересчитана заново при каждом изменении системного времени, например, по ntp.

pkuutn
()

оформлять сложнее с одной стороны (тащить к каждой приблуде по таймеру). С другой - больше свистоперделок и удобнее (для себя) мониторинг, чем упавшие кронтаски

в целом чуть чуть лучше

arcanis ★★★★
()

Мне понравилась, что таймеры устанавливаются как отдельные файлы, а значит их как отдельные файлы будет проще устанавливать при помощи пакетного менеджера, чем добавлять строчку в ОБЩИЙ файл.

С разморозкой: всё именно так и работает в cron.

aidaho ★★★★★
()
Ответ на: комментарий от intelfx

they all hate eachother

Чушь. Это больше похоже на поведение русскоязычного сообщества Linux.

they just hate linux a lot more

Нет, мы просто не воспринимаем поделку финского студента всерьёз. ☺

Лично я ничего против Linux как ОС не имею, но к Грегу лично (а с относительно недавнего времени и к Линусу, раз он поддержал его позицию), поведению команды разработчиков ядра и политики GNU у меня много претензий.

mord0d ★★★★★
()
21 июля 2020 г.
Ответ на: комментарий от LongLiveUbuntu

А что там случилось? Это не с ZFS связано?

Я уже не найду тот ответ в рассылке, но на жалобы что они в ядре снова отломали ZFS, Грег ответил, что оно нишвабодное, потому мы будем делать так чтобы оно не работало со свободным ядром, а если эти ограничения будут обходить в ZoL, то мы на них подадим в суд. А всех несогласных Грег послал нафиг на FreeBSD (что я и сделал).

Причём от этих палок в колёса пострадала VMWare (правда очень быстро пофиксили, что я даже пруфов не нахожу), но полностью проприетарный драйвер nvidia как работал, так и работает. Двойные стандарты налицо.

mord0d ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.