From: "Вадим Илларионов" <gbimobou@gmail.com> To: sisyphus@lists.altlinux.org Subject: Re: [sisyphus] Быстрая замена кронтабов на таймеры Date: Mon, 6 Nov 2017 11:58:40 +0800 Message-ID: <de11a0dd-a70c-5216-3ef6-37621b70afb9@gmail.com> (raw) In-Reply-To: <CAEdvWkSz8cHGx27Re=HyiNz6dR+iJRmAzUY56u99hDUa1CW7tQ@mail.gmail.com> 03.11.2017 20:14, Alexey Shabalin пишет: > 3 ноября 2017 г., 11:25 пользователь В.А. Илларионов > <gbimobou@gmail.com> написал: >> 28.10.2017 13:11, Anton Farygin пишет: >>>> Во всяком случае, подобного решения не встречал ни в родном, ни в >>>> иноязычных руководствах. Хотя, вроде бы, само напрашивается. Всё же >>>> Леннарт гений - почти как Ленин :) >>>> >>> Интересное решение. Надо упакечивать >> >> Со спеками я работал, но тут поскриптовать при установке надо, и что-то опасаюсь я. >> В праздники попробую разобраться с этим. >> for do in enable start; do >> systemctl $do doit@${minute,hour,dai,week,month,quarter,semi-annual,year}ly.timer >> done > А вы видели вот эти проекты: > https://github.com/systemd-cron > тут собраны разные реализации генератора таймеров на основе crontab. Как-то всё несколько выморочно, излишне наворочено. Ведь всё необходимое уже наличествует в systemd, достаточно всего-то: а) пары шаблонов - один для таймеров, другой для таргетов к этим таймерам; б) включить/запустить надобные таймеры по оным шаблонам; в) создать service-файлы с указанием таргета требуемой периодичности в секции [Install] - а без этого никак при любой реализации (автогенератору таковых на основе кронтаб-скриптов сам Леннарт, вон, дал отлуп: https://lists.freedesktop.org/archives/systemd-devel/2013-September/013120.html). > Так же там описаны таймеры: > boot, > hourly, > daily, > weekly, > monthly, > yearly, > minutely, > quarterly, > semi-annually Ну, они много где описаны. Суть одна - исполнять еже<...>но, без указания сложных конструкций из даты:времени/периодичности (собственно, именно то, чем занимается /etc/cron.<...>ly/, плюс не охваченные этим способом ежеминутные, ежеквартальные и ежесеместровые запуски). А для сложных конструкций в замену /etc/cron.d приходится, конечно, создавать отдельные таймеры. Причём, в некоторых ситуациях таймер, похоже, справится там, где крон надо костылём подпирать - например: # By default, run at 00:57 on every Sunday, but do nothing unless the day of the month is less than or equal to 7. Thus, only run on the first Sunday of each month. # crontab(5) sucks, unfortunately, in this regard; therefore this hack (see #380425). 57 0 * * 0 root [ -x /usr/share/mdadm/checkarray ] && [ $(date +\%d) -le 7 ] && /usr/share/mdadm/checkarray --cron --all --idle --quiet Не уверен, но нюхом чую - можно такое условие таймером обрисовать. :) > В планах есть упаковать, как замену cron. Но руки все не доходят. > Нарисовал таймер для logrotate, и отключил crond у себя. > Больше никаких заданий в кроне нет, поэтому и успокоился :) Я же пока плохо представляю, как состряпать спек для пары шаблонов и скрипта установки/удаления такого, с позволения сказать, "пакета". А после некоторым мейнтейнерам потребуется включать в свои пакеты помимо кронтабов ещё и сервисы к периодичным задачам (logrotate тот же) с учётом оного новшества - то есть, сперва этот мой предполагаемый "пакет" железно должен быть принят в альтовские дистрибутивы. -- Мимо крокодил. WBR, rednex CIO. JID = <mailto:> Skype = $local_part@<mailto:> Viber = +7(964)103-65-67 Опции rsync -aHAX --delete мозг автоматом переводит как "удалить к чёртовой матери!"
prev parent reply other threads:[~2017-11-06 3:58 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-10-24 10:23 В.А. Илларионов 2017-10-28 2:11 ` [sisyphus] " Вадим Илларионов 2017-10-28 5:11 ` [sisyphus] " Anton Farygin 2017-11-03 8:25 ` В.А. Илларионов 2017-11-03 12:14 ` Alexey Shabalin 2017-11-06 3:58 ` Вадим Илларионов [this message]
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=de11a0dd-a70c-5216-3ef6-37621b70afb9@gmail.com \ --to=gbimobou@gmail.com \ --cc=sisyphus@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git