diff options
author | Jakob Odersky <jakob@odersky.com> | 2017-07-31 21:23:32 -0700 |
---|---|---|
committer | Jakob Odersky <jakob@odersky.com> | 2017-07-31 21:23:32 -0700 |
commit | 3236ac89d1faba6ddf161c9f1dab13d48eac5b2f (patch) | |
tree | cda78df30e4b336538c33a2f70e87c0847f262e7 | |
parent | 7c239f753c93d5bc7a317f615c04f8d8b0e177ff (diff) | |
download | dotfiles-3236ac89d1faba6ddf161c9f1dab13d48eac5b2f.tar.gz dotfiles-3236ac89d1faba6ddf161c9f1dab13d48eac5b2f.tar.bz2 dotfiles-3236ac89d1faba6ddf161c9f1dab13d48eac5b2f.zip |
Add backup utility and monitoring
-rw-r--r-- | home/.config/i3/i3blocks.conf | 5 | ||||
-rwxr-xr-x | home/.config/i3/status/backup | 29 | ||||
-rwxr-xr-x | home/bin/backup | 14 |
3 files changed, 39 insertions, 9 deletions
diff --git a/home/.config/i3/i3blocks.conf b/home/.config/i3/i3blocks.conf index a18c9ef..f468269 100644 --- a/home/.config/i3/i3blocks.conf +++ b/home/.config/i3/i3blocks.conf @@ -58,6 +58,11 @@ signal=10 instance=leds/tpacpi::kbd_backlight command=~/.config/i3/status/brightness +[backup] +label= +command=~/.config/i3/status/backup +interval=10 + [disk] label= interval=30 diff --git a/home/.config/i3/status/backup b/home/.config/i3/status/backup new file mode 100755 index 0000000..48a8a3e --- /dev/null +++ b/home/.config/i3/status/backup @@ -0,0 +1,29 @@ +#!/bin/bash + +uuid=05b7770e-1f01-4b17-83de-ede0a04495a1 +instance="$(systemd-escape $uuid)" + +if systemctl --quiet is-active "cryo@$instance.service"; then + echo "" + echo "backup running" + echo "#00ff00" +elif systemctl --quiet is-failed "cryo@$instance.service"; then + echo "" + echo "backup failed" + echo "#ff0000" +elif [[ -f /var/lib/cryo/$uuid/alpha ]]; then + last_run=$(date --reference "/var/lib/cryo/$uuid/alpha" +%s) + now=$(date +%s) + days=$(( (now - last_run) / 60 / 60 / 24 )) + if [[ $days -gt 30 ]]; then + echo ">30d" + echo "backup last run over 30 days ago" + echo "#ff0000" + else + echo "${days}d" + echo "backup last run $days days ago" + fi +else + echo "no backup" + echo "no recent backup found" +fi diff --git a/home/bin/backup b/home/bin/backup index 648b59d..eb70d1d 100755 --- a/home/bin/backup +++ b/home/bin/backup @@ -1,21 +1,17 @@ #!/bin/bash set -e -device=/dev/sdb -mapped=backup +uuid=05b7770e-1f01-4b17-83de-ede0a04495a1 +instance="$(systemd-escape $uuid)" case "$1" in mount) - echo $(pass other/backup) | sudo cryptsetup open --type luks "$device" "$mapped" - sudo mount /dev/mapper/"$mapped" /mnt + sudo cryo "$uuid" mount ;; umount) - sudo umount /mnt - sudo cryptsetup close "$mapped" + sudo cryo "$uuid" umount ;; *) - echo "Unknown argument $1" - echo "Usage: $0 [mount | umount]" - exit 1 + sudo systemctl start "cryo@$instance.service" ;; esac |