From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:subject:to:message-id:date:user-agent:mime-version :content-transfer-encoding:content-language; bh=DqSKDTcn+OQqRNHUGfcrH78Rss2gbCfBZS/V+tEf+oo=; b=OlUc9dw06Ep3eTalvK9Jk5bji2fgYC+rSXV+g6Vd9EhhRbIw+wb/3jaw9lFfjA0FBx TLZcqgqQS3cgqseQMxQqiX2ZPkQ4CjodE2JhrUYFVLGLMBZKvldU4PdyAJ51R1A1to64 j/4g5BfUeF4O7gtbiXpmsdRZG/d6ue89WISj3DN8BgoCFWrdd+9H+MxTrLIXjNe/Jx4R VAeX1lf2AlfrVFeB/CVTj2xmIbV5rG2RoUDnA6nBfIn5k/JKchB3+9ujouwC+2wPVaZZ WQMaIQFxMz7aC6Ec7/M12HsXfhp8Ogy3z3qmcrx7UZCLYGMuy2PVNHs8sybn6XNZ2d8G 3+ug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:subject:to:message-id:date:user-agent :mime-version:content-transfer-encoding:content-language; bh=DqSKDTcn+OQqRNHUGfcrH78Rss2gbCfBZS/V+tEf+oo=; b=nDnZ9TrTto5gUnA7hZWXYSn8aCnoecC/ydBSpU0v67A/tgNZ/fhb6SlQr5d68wcqJ4 dmFvRiPqkliCfRcFl5Ryn/iUJ5pxQ2m3SGjfmcGOO/Y9eWpwhfBNbnTm0HPT8Sapcbe1 tY2Q8xv5b6Ye7A8M1kpMnC4XWKkzUZ5DFUhinGAUxaJBFRWuauEGwmV6jeRblMYXQ4pW lxYdhNOzMZj7n75OM732AAZEyLMUglXMGGsTibhl2OWlgTlkvTIUcAUka17usmncUpJL 3oQUsTAN8S/cMfwer9qhoVZpIh4wcq/lFIAO+kZavBDts331r+zf1ANzbyl9fBRHt+kU P1hg== X-Gm-Message-State: AMCzsaVifOfhFj9ROd7PQFx7RQU0c5aVYeFI30DU5gRo9A4h6Ikp3BBa 3SU85tG6ohCdlYjs3ZEx6MJ24JXs X-Google-Smtp-Source: ABhQp+QhOeP8Vl6SDgpStqU+Gbf280uM4mZdEKNbtijtkpxqD7r0tOBU26WjEsIxXBz6mqHVpHODCw== X-Received: by 10.46.89.147 with SMTP id g19mr6332086ljf.26.1508840627684; Tue, 24 Oct 2017 03:23:47 -0700 (PDT) From: "=?UTF-8?B?0JIu0JAuINCY0LvQu9Cw0YDQuNC+0L3QvtCy?=" X-Google-Original-From: =?UTF-8?B?0JIu0JAuINCY0LvQu9Cw0YDQuNC+0L3QvtCy?= To: ALT Linux Sisyphus discussions Message-ID: <605e3602-c33e-68c8-bf1b-89edfdde2fc9@gmail.com> Date: Tue, 24 Oct 2017 18:23:44 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US Subject: [sisyphus] =?utf-8?b?0JHRi9GB0YLRgNCw0Y8g0LfQsNC80LXQvdCwINC60YA=?= =?utf-8?b?0L7QvdGC0LDQsdC+0LIg0L3QsCDRgtCw0LnQvNC10YDRiw==?= X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Oct 2017 10:23:50 -0000 Archived-At: List-Archive: List-Post: Реализовал следующим образом. 1. Создал два шаблона - для периодических таймеров и их "целей", назвал их doit@ - мол, "делать это еже..." minutely    ...минутно, hourly        ...часно, daily           ...дневно, weekly        ...недельно, monhly        ...месячно, yearly        ...годно. Само собой, doit что в именах, что в шаблоне таймера и периодически запускаемых сервисах можно заменить на do, cron, timers или что угодно. Итак. # cat /lib/systemd/system/doit@.target [Unit] Description=%i timer target StopWhenUnneeded=yes # cat /lib/systemd/system/doit@.timer [Unit] Description=%i timer [Timer] OnCalendar=%i Persistent=true # Рандомизацию пока отключил - не знаю, как оно сочетается с запуском ежеминутных скриптов: #RandomizedDelaySec=10min Unit=doit@%i.target [Install] WantedBy=timers.target 2. Включил и запустил периодические таймеры: for time in minute hour dai week month year; do     for act in enable start; do         systemctl $act doit@${time}ly.timer     done done 3. Создал сервисы, требующие периодического исполнения, нужную периодичность указав через секцию [Install]. Вот пример: # cat /lib/systemd/system/logrotate.service [Unit] Description=Rotate system logs [Service] Nice=19 Type=simple IOSchedulingClass=2 IOSchedulingPriority=7 ExecStart=/usr/sbin/logrotate /etc/logrotate.conf [Install] WantedBy=doit@daily.target 4. И, наконец, включил их: systemctl enable <список таких сервисов> Собственно, готово - работает. Вот: # systemctl list-timers NEXT                          LEFT                 LAST                          PASSED       UNIT                         ACTIVATES Tue 2017-10-24 18:18:00 IRKT  32s left             Tue 2017-10-24 18:17:02 IRKT  25s ago      doit@minutely.timer          doit@minutely.target Tue 2017-10-24 19:00:00 IRKT  42min left           Tue 2017-10-24 18:00:12 IRKT  17min ago    doit@hourly.timer            doit@hourly.target Wed 2017-10-25 00:00:00 IRKT  5h 42min left        n/a                           n/a          doit@daily.timer             doit@daily.target Wed 2017-10-25 15:46:49 IRKT  21h left             Tue 2017-10-24 15:46:49 IRKT  2h 30min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service Mon 2017-10-30 00:00:00 IRKT  5 days left          n/a                           n/a          doit@weekly.timer            doit@weekly.target Wed 2017-11-01 00:00:00 IRKT  1 weeks 0 days left  n/a                           n/a          doit@monthly.timer           doit@monthly.target Mon 2018-01-01 00:00:00 IRKT  2 months 7 days left n/a                           n/a          doit@yearly.timer            doit@yearly.target 7 timers listed. Pass --all to see loaded but inactive timers, too. # ls /etc/systemd/system/doit@daily.target.wants /etc/systemd/system/doit@minutely.target.wants /etc/systemd/system/doit@monthly.target.wants /etc/systemd/system/doit@daily.target.wants: logrotate.service /etc/systemd/system/doit@minutely.target.wants: unbound-stats.service /etc/systemd/system/doit@monthly.target.wants: unbound-anchor.service -- Мимо крокодил. WBR, rednex CIO. Viber = +7(964)103-65-67 JID = Skype = $local_part@