Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:systemd_timer [2017/11/17 11:17] pasqual |
admin_grundlagen:systemd_timer [2018/08/15 15:47] ingo_wichmann |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | Statt mit cron können auch mit dem Systemd-Timer zeitgesteuert Programme gestartet werden. Dazu werden zwei Dateien, *.timer und *.service unter /etc/systemd/system angelegt. Beispielsweise date.timer und date.service um alle 2 Minuten Freitags zwischen 9 und 11 Uhr in den Monaten Januar, Mai und November den aktuellen Zeitstempel in eine Datei /tmp/timer zu schreiben. | + | Statt mit cron können auch mit dem Systemd-Timer zeitgesteuert Programme gestartet werden. Dazu werden zwei Dateien, *.timer und *.service unter /etc/systemd/system angelegt. Beispielsweise date.timer und date.service um alle 2 Minuten Freitags zwischen 9 und 11 Uhr in den Monaten Januar, Mai und November den aktuellen Zeitstempel in eine Datei ''/tmp/timer'' zu schreiben. |
- | Die date.timer-Datei hat folgenden Aufbau: | + | Zeitangabe testen: |
+ | systemd-analyze calendar 'FRI *-1,5,11-* 9,10:0/2' | ||
- | [Unit] | + | Timer Unit anlegen: |
- | Description=Run date.service every 2 minutes on Fridays in Jan, May and Nov between 0900 and 1058 hrs | + | systemctl edit --full --force dateprint.timer |
+ | |||
+ | <file txt /etc/systemd/system/dateprint.timer> | ||
+ | [Unit] | ||
+ | Description=Run dateprint.service every 2 minutes on Fridays in Jan, May and Nov between 0900 and 1058 hrs | ||
| | ||
- | [Timer] | + | [Timer] |
- | OnCalendar=FRI *-1,5,11-* 9,10:0/2 | + | OnCalendar=FRI *-1,5,11-* 9,10:0/2 |
+ | </file> | ||
+ | |||
+ | Syntax Unit File prüfen: | ||
+ | systemd-analyze verify dateprint.timer | ||
- | und die date.service sieht so aus: | + | Service Unit anlegen: |
+ | systemctl edit --force --full dateprint.service | ||
+ | <file txt /etc/systemd/system/dateprint.service> | ||
[Unit] | [Unit] | ||
Description=Prints date into /tmp/timer file | Description=Prints date into /tmp/timer file | ||
Zeile 18: | Zeile 29: | ||
ExecStart=/usr/bin/sh -c '/usr/bin/date >> /tmp/timer' | ExecStart=/usr/bin/sh -c '/usr/bin/date >> /tmp/timer' | ||
User=nutzer19 | User=nutzer19 | ||
- | Group=nutzer19'' | + | Group=nutzer19 |
+ | </file> | ||
- | Der so erstellte Timer wird dann mit systemctl enable date.timer --now aktiviert. | + | Syntax Unit File prüfen: |
+ | systemd-analyze verify dateprint.service | ||
+ | Der so erstellte Timer wird dann mit | ||
+ | systemctl enable dateprint.timer --now | ||
+ | aktiviert. | ||