Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


systemd:eigene_unit:oneshot_unit

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

systemd:eigene_unit:oneshot_unit [2018/04/12 20:31] (aktuell)
stefan_miethke angelegt
Zeile 1: Zeile 1:
 +====== oneshot Units ======
 +  cp -a /​usr/​share/​doc /​usr/​share/​doc2
 +<file txt /​etc/​systemd/​system/​tardoc2.service>​
 +[Unit]
 +Description=save/​restore /​usr/​share/​doc2
 +
 +[Service]
 +Type=oneshot
 +
 +ExecStart=/​usr/​bin/​tar -cvzf /​usr/​share/​doc2.tgz /​usr/​share/​doc2
 +ExecStart=/​bin/​rm -r /​usr/​share/​doc2
 +</​file>​
 +
 +Damit lässt sich gut mit ''​systemctl start tardoc2.service''​ das Verzeichnis sichern und löschen.
 +
 +Wie kann man das Verzeichnis wieder zurücksichern?​
 +
 +Wir erweitern das Unit um ''​ExecStop''​
 +<​file>​
 +[Service]
 +...
 +ExecStop=/​usr/​bin/​tar -xvzf /​usr/​share/​doc2.tgz
 +ExecStop=/​bin/​rm /​usr/​share/​doc2.tgz
 +</​file>​
 +Problem: ''​stop''​ wird nie ausgeführt,​ weil die Unit als oneshot-Unit nach der Ausführung ihrer Befehle inactive ist
 +
 +Abhilfe: Unit persistent machen ​
 +<​file>​
 +[Service]
 +...
 +RemainAfterExit=yes
 +</​file>​
  
systemd/eigene_unit/oneshot_unit.txt · Zuletzt geändert: 2018/04/12 20:31 von stefan_miethke