From 684c592ac659de0d934f5c9a47d28348d12e723e Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Mon, 22 May 2023 01:23:42 -0400 Subject: systemd units --- Makefile | 3 +++ push-btrfs@.service | 10 ++++++++++ push-btrfs@.timer | 5 +++++ 3 files changed, 18 insertions(+) create mode 100644 push-btrfs@.service create mode 100644 push-btrfs@.timer diff --git a/Makefile b/Makefile index 327ab68..ac0ab02 100644 --- a/Makefile +++ b/Makefile @@ -5,5 +5,8 @@ ifeq ($(remotes),) $(error You must put at least one *.json configuration file into ). endif +install: + for remote in $(remotes); do systemctl enable push-btrfs@$$remote.service; systemctl enable --now push-btrfs@$$remote.timer; done + go: for remote in $(remotes); do bash$(if $(verbose), -x) push-btrfs $$remote$(if $(verbose),;, &) done; wait diff --git a/push-btrfs@.service b/push-btrfs@.service new file mode 100644 index 0000000..9eb1713 --- /dev/null +++ b/push-btrfs@.service @@ -0,0 +1,10 @@ +[Unit] +Description = Btrfs Backup over SSH +ConditionUser = root +ConditionFileNotEmpty = /etc/btrfs-backup/remotes/%I.json + +[Service] +ExecStart = /root/src/local-btrfs-backup/push-btrfs %I.json + +[Install] +WantedBy=default.target diff --git a/push-btrfs@.timer b/push-btrfs@.timer new file mode 100644 index 0000000..acabfe5 --- /dev/null +++ b/push-btrfs@.timer @@ -0,0 +1,5 @@ +[Timer] +OnUnitInactiveSec=61 + +[Install] +WantedBy=default.target -- cgit v1.2.3