aboutsummaryrefslogtreecommitdiff
path: root/scripts/snap-btrfs.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/snap-btrfs.sh')
-rwxr-xr-xscripts/snap-btrfs.sh23
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/snap-btrfs.sh b/scripts/snap-btrfs.sh
new file mode 100755
index 0000000..cc2e5a9
--- /dev/null
+++ b/scripts/snap-btrfs.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+set -x
+set -e
+timestamp() {
+ date +%m.%d.%y_%H.%M.%S
+}
+
+rootfs="glibc"
+snap="${rootfs}-snap"
+
+cd /ROOT
+
+if [ -e "$snap" ] ; then
+ btrfs sub del "$snap"
+fi
+
+if ! [ -e "bak" ] ; then
+ btrfs sub create "bak"
+fi
+
+btrfs sub snap -r "$rootfs" "bak/${rootfs}-$(timestamp)"
+btrfs sub snap "$rootfs" "$snap"
+sed -i.bak -e"s/subvol=${rootfs}/subvol=${snap}/g" "${snap}/etc/fstab"