Systemd/Timers: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Tuxnix (Diskussion | Beiträge)
Tuxnix (Diskussion | Beiträge)
KKeine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:
[[Kategorie:Systemverwaltung]]
[[Kategorie:Systemverwaltung]]
[[Kategorie:Services]]
[[Kategorie:Services]]
[[Kategorie:systemd]]
 
[[en:Systemd/Timers]]
[[en:Systemd/Timers]]
[[fr:Systemd/cron]]
[[ja:Systemd/タイマー]]
[[ja:Systemd/タイマー]]
[[ru:Systemd/Timers]]
[[ru:Systemd/Timers]]
{{righttoc}}
{{righttoc}}
Timer bieten die Möglichkeit Aufgaben zeitlich zu steuern. Sie bestehen aus einer {{ic|.timer}} und einer {{ic|.service}} Datei.
Timer bieten die Möglichkeit Aufgaben zeitlich zu steuern. Die Timer-Unit bestehen aus einer {{ic|.timer}} und einer {{ic|.service}} Datei.
Der Timer Dienst untersteht [[systemd]] und muss mit dem systemctl Befehl aktiviert werden. Eine Alternative bietet hierzu [[cron]].
Sie untersteht [[systemd]] und muss mit dem systemctl Befehl aktiviert werden. Eine Alternative hierzu bietet [[cron]].


== Beispiel ==
== Beispiel ==
Zeile 44: Zeile 44:
  systemctl list-timers --all
  systemctl list-timers --all
Listet alle Timer auf. Sollen nur die aktiven Timer angezeigt werden genügt ein ''systemctl list-timers''
Listet alle Timer auf. Sollen nur die aktiven Timer angezeigt werden genügt ein ''systemctl list-timers''
== Details ==
Nun zu den Kleinigkeiten innerhalb der {{ic|.timer}} und {{ic|.service}} Dateien und welche Angaben hier getätigt werden können.
=== [Unit] ===
* Description= hier wird der Name der Timer-Unit angegeben. Dieser Name erscheint bei der Abfrage mit ''systemctl list-timers''.
noch k.w.T.
=== [Timer] ===
==== relative Zeitangaben ====
Sind abhängig von anderen Ereignissen
* OnActiveSec= Intervall seit Aktivierung des Timers selbst
* OnBootSec= Intervall seit dem Booten des Rechners
* OnStartupSec= Intervall seit dem ersten Start von systemd
* OnUnitActiveSec= Intervall seit dem letzten Start des Timers
* OnUnitInactiveSec= Intervall seit Inaktivität der Timer-Unit
(Hier müssen noch bessere Vormulierungen gefunden werden)
==== absolute Zeitangaben ====
* OnCalendar=
noch k.w.T.
=== Zeiteinheiten ===
Ohne Verwendung einer Einheit werden alle Angaben als Sekunden gewertet.
noch k.w.T.
=== [Install] ===
* WantedBy=basic.target
noch k.w.T.
=== [Service] ===
* ExecStart= Angabe eines Befehls oder eines ausführbaren Scripts.


== Weblinks ==
== Weblinks ==

Version vom 17. März 2017, 07:31 Uhr

„Systemd/Timers“ wurde von Tuxnix (Diskussion) als in Bearbeitung markiert. Um Bearbeitungskonflikte zu vermeiden, kontaktiere Tuxnix (Diskussion) bitte, bevor du den Artikel bearbeitest.



Timer bieten die Möglichkeit Aufgaben zeitlich zu steuern. Die Timer-Unit bestehen aus einer .timer und einer .service Datei. Sie untersteht systemd und muss mit dem systemctl Befehl aktiviert werden. Eine Alternative hierzu bietet cron.

Beispiel

Die .timer Datei

# Datei /usr/lib/systemd/system/foo.timer
[Unit]
Description=foo
[Timer]
OnBootSec=1h
OnUnitInactiveSec=1d
[Install]
WantedBy=basic.target

Die .service Datei

# Datei /usr/lib/systemd/system/foo.service
[Unit]
Description=foo
[Service]
ExecStart=/usr/bin/foo

Als [Service] kann ein Befehl oder ein ausführbares Script genutzt werden. Service- und Timerdatei werden in /usr/lib/systemd/system/ abgelegt und müssen vor dem . (Punkt) den gleichen Namen tragen.

De-/Aktivierung

systemctl enable --now foo.timer

Mit enable --now startet der Timer unverzüglich und permanent, sodass er auch nach einem Neustart aktiv ist. Ohne --now werden enable, disable oder reenable erst nach einem reboot wirksam. start und stop hingegen, haben lediglich Auswirkungen auf die laufende Sitzung.

systemctl reenable --now foo.timer 

Genügt damit eine nachträgliche Veränderung der Timer-Unit wirksam wird.

Management

systemctl list-timers --all

Listet alle Timer auf. Sollen nur die aktiven Timer angezeigt werden genügt ein systemctl list-timers

Details

Nun zu den Kleinigkeiten innerhalb der .timer und .service Dateien und welche Angaben hier getätigt werden können.

[Unit]

  • Description= hier wird der Name der Timer-Unit angegeben. Dieser Name erscheint bei der Abfrage mit systemctl list-timers.

noch k.w.T.

[Timer]

relative Zeitangaben

Sind abhängig von anderen Ereignissen

  • OnActiveSec= Intervall seit Aktivierung des Timers selbst
  • OnBootSec= Intervall seit dem Booten des Rechners
  • OnStartupSec= Intervall seit dem ersten Start von systemd
  • OnUnitActiveSec= Intervall seit dem letzten Start des Timers
  • OnUnitInactiveSec= Intervall seit Inaktivität der Timer-Unit

(Hier müssen noch bessere Vormulierungen gefunden werden)

absolute Zeitangaben

  • OnCalendar=

noch k.w.T.

Zeiteinheiten

Ohne Verwendung einer Einheit werden alle Angaben als Sekunden gewertet.

noch k.w.T.

[Install]

  • WantedBy=basic.target

noch k.w.T.

[Service]

  • ExecStart= Angabe eines Befehls oder eines ausführbaren Scripts.

Weblinks