summaryrefslogtreecommitdiff
path: root/borg-family-0.2/src/etc/bfhooks
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2021-06-15 16:45:20 +0200
committerLudovic Pouzenc <ludovic@pouzenc.fr>2021-06-15 16:45:20 +0200
commitb9601cf46a75b373f6b6b902d7ac2be38ab2ffe8 (patch)
treedaa3ef109d6f0b1dd7884622a2b2fba8c10e32cb /borg-family-0.2/src/etc/bfhooks
parent1ada10f44e2baf28823156c006c82a076c52f530 (diff)
downloadborg-family-b9601cf46a75b373f6b6b902d7ac2be38ab2ffe8.tar.gz
borg-family-b9601cf46a75b373f6b6b902d7ac2be38ab2ffe8.tar.bz2
borg-family-b9601cf46a75b373f6b6b902d7ac2be38ab2ffe8.zip
borg-family_0.2-1
Diffstat (limited to 'borg-family-0.2/src/etc/bfhooks')
-rwxr-xr-xborg-family-0.2/src/etc/bfhooks43
1 files changed, 43 insertions, 0 deletions
diff --git a/borg-family-0.2/src/etc/bfhooks b/borg-family-0.2/src/etc/bfhooks
new file mode 100755
index 0000000..c7ce378
--- /dev/null
+++ b/borg-family-0.2/src/etc/bfhooks
@@ -0,0 +1,43 @@
+#!/bin/bash -e
+mount_bind_rootfs() {
+ if ! mount | grep -q /rootfs; then
+ mkdir -p /rootfs
+ mount --bind / /rootfs
+ fi
+}
+
+mount_efi() {
+ if ! mount | grep -q /boot/efi; then
+ mount /boot/efi
+ fi
+}
+
+umount_bind_rootfs() {
+ if mount | grep -q /rootfs; then
+ umount /rootfs || lsof -n | grep /rootfs
+ rmdir /rootfs
+ fi
+}
+
+umount_efi() {
+ if mount | grep -q /boot/efi; then
+ umount /boot/efi || lsof -n | grep /boot/efi
+ fi
+}
+
+case $1 in
+ before)
+ echo "Start of backup: $2 to $BORG_REPO"
+ case $2 in
+ rootfs) apt-get clean || true; mount_bind_rootfs;;
+ boot-efi) mount_efi ;;
+ esac
+ ;;
+ after)
+ case $2 in
+ rootfs) umount_bind_rootfs ;;
+ boot-efi) umount_efi ;;
+ esac
+ echo "End of backup: $2 to $BORG_REPO"
+ ;;
+esac