Backrest: install Backrest as a systemd service to simplify pre/post-backup hooks (e.g., docker compose stop/start). Do not want to overcomplicate setup and run backrest (single binary) in a container with SSHing to host and/or docker.sock access
This commit is contained in:
28
hosts/home-morefine/systemd/backrest/install.sh
Normal file
28
hosts/home-morefine/systemd/backrest/install.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#! /bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
BACKREST_VERSION='v1.11.2'
|
||||
TMPDIR="$(mktemp -d)"
|
||||
|
||||
# backrest working directory
|
||||
sudo mkdir -p /home/backups/backrest
|
||||
sudo chown backups:backups /home/backups/backrest
|
||||
|
||||
curl -fL -o "${TMPDIR}/backrest.tar.gz" \
|
||||
"https://github.com/garethgeorge/backrest/releases/download/${BACKREST_VERSION}/backrest_Linux_x86_64.tar.gz"
|
||||
|
||||
tar -xzf "${TMPDIR}/backrest.tar.gz" -C "${TMPDIR}"
|
||||
|
||||
if systemctl is-active --quiet backrest; then
|
||||
sudo systemctl stop backrest
|
||||
echo "Paused backrest for update"
|
||||
fi
|
||||
|
||||
sudo install -D -o root -g root -m 0644 ./backrest.service /etc/systemd/system/backrest.service
|
||||
sudo install -o root -g root -m 0755 "${TMPDIR}/backrest" /usr/local/bin/backrest
|
||||
|
||||
echo "Reloading systemd service"
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable --now backrest
|
||||
|
||||
rm -rf "${TMPDIR}"
|
||||
Reference in New Issue
Block a user