From 94710167395197879bb0004e0c05b5ca915c9eb7 Mon Sep 17 00:00:00 2001 From: Willi Mutschler Date: Wed, 29 Apr 2020 09:59:11 +0200 Subject: [PATCH] Initial fork of timeshift-autosnap Forked timeshift-autosnap to work in Ubuntu-based distros, updated README and LICENSE --- .gitignore | 4 + 80-timeshift-autosnap-apt | 1 + LICENSE | 22 ++++++ README.md | 148 ++++++++++++++++++++++++++++++++++++ timeshift-autosnap-apt | 57 ++++++++++++++ timeshift-autosnap-apt.conf | 20 +++++ timeshift-autosnap-apt.png | Bin 0 -> 58891 bytes 7 files changed, 252 insertions(+) create mode 100644 .gitignore create mode 100644 80-timeshift-autosnap-apt create mode 100755 LICENSE create mode 100644 README.md create mode 100755 timeshift-autosnap-apt create mode 100644 timeshift-autosnap-apt.conf create mode 100644 timeshift-autosnap-apt.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..275c9d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ + +\.directory + +aur/ diff --git a/80-timeshift-autosnap-apt b/80-timeshift-autosnap-apt new file mode 100644 index 0000000..dfab674 --- /dev/null +++ b/80-timeshift-autosnap-apt @@ -0,0 +1 @@ +DPkg::Pre-Invoke {"/usr/bin/timeshift-autosnap-apt"; }; diff --git a/LICENSE b/LICENSE new file mode 100755 index 0000000..6659f14 --- /dev/null +++ b/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2019 gobonja +Copyright (c) 2020 Willi Mutschler (wmutschl, willi@mutschler.eu) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..81b84af --- /dev/null +++ b/README.md @@ -0,0 +1,148 @@ +# timeshift-autosnap-apt +Timeshift auto-snapshot script which runs before `apt upgrade|install|remove` using a `DPkg::Pre-Invoke` hook in apt. + +## Features +* This scrips is a fork of [timeshift-autosnap](https://gitlab.com/gobonja/timeshift-autosnap) from the [AUR](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=timeshift-autosnap) for Arch and Arch based distros but adapted for usage in Debian based systems which use apt as their package manager. +* Creates [Timeshift](https://github.com/teejee2008/timeshift) snapshots with unique comment. +* Deletes old snapshots which are created using this script. +* Can be manually executed by running `sudo timeshift-autosnap-apt` command. +* Autosnaphot can be temporarily skipped by setting SKIP_AUTOSNAP environment variable (e.g. `sudo SKIP_AUTOSNAP= apt upgrade`) +* Supports both `BTRFS` and `RSYNC` mode. +* For a tutorial how to use this script in production to easily rollback your system, see [Pop!_OS 20.04 btrfs-luks disaster recovery and easy system rollback using Timeshift and timeshift-autosnap-apt](https://mutschler.eu/linux/install-guides/pop-os-btrfs-recovery/). + +## Installation +If you haven't, first install Timeshift: +```bash +sudo apt install timeshift +``` +Open Timeshift and configure it either using btrfs or rsync. I recommend using btrfs as a filesystem for this, see my [btrfs installation guides](https://mutschler.eu/linux/install-guides/) for Pop!_OS, Ubuntu, and Manjaro. + +Clone the repository and run the following commands to copy the hook, bash script and configuration file. +```bash +git clone https://github.com/wmutschl/timeshift-autosnap-apt.git +cd timeshift-autosnap-apt +sudo cp 80-timeshift-autosnap-apt /etc/apt/apt.conf.d/80-timeshift-autosnap-apt +sudo chmod 644 /etc/apt/apt.conf.d/80-timeshift-autosnap-apt +sudo cp timeshift-autosnap-apt /usr/bin/timeshift-autosnap-apt +sudo chmod 755 /usr/bin/timeshift-autosnap-apt +sudo cp timeshift-autosnap-apt.conf /etc/timeshift-autosnap-apt.conf +sudo chmod 644 /etc/timeshift-autosnap-apt.conf +``` +After this, optionally, make changes to the configuration file: +```bash +sudo nano /etc/timeshift-autosnap-apt.conf +``` + +## Configuration +The configuration file is located in `/etc/timeshift-autosnap-apt.conf`. You can set the following options: +* `skipAutosnap`: If set to **true** script won't be executed. Default: **false**. +* `deleteSnapshots`: If set to **false** old snapshots won't be deleted. Default: **true** +* `maxSnapshots`: Defines **maximum** number of old snapshots to keep. Default: **3** +* `snapshotDescription` Defines **value** used to distinguish snapshots created using timeshift-autosnap-apt. Default: **{timeshift-autosnap-apt} {created before upgrade}** + + +## Test functionality +To test the functionality, try (re)installing some package `maxSnapshots` number of times, e.g. +```bash +sudo apt install --reinstall rolldice +sudo apt install --reinstall rolldice +sudo apt install --reinstall rolldice +``` +You should see output for BTRFS similar to +```bash +# Using system disk as snapshot device for creating snapshots in BTRFS mode +# +# /dev/dm-1 is mounted at: /run/timeshift/backup, options: rw,relatime,compress=zstd:3,ssd,space_cache,commit=120,subvolid=5,subvol=/ +# +# Creating new backup...(BTRFS) +# Saving to device: /dev/dm-1, mounted at path: /run/timeshift/backup +# Created directory: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-46-30 +# Created subvolume snapshot: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-46-30/@ +# Created subvolume snapshot: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-46-30/@home +# Created control file: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-46-30/info.json +# BTRFS Snapshot saved successfully (0s) +# Tagged snapshot '2020-04-29_09-46-30': ondemand +# -------------------------------------------------------------------------- +``` +or for RSYNC similar to +```bash +# /dev/vdb1 is mounted at: /run/timeshift/backup, options: rw,relatime +# ------------------------------------------------------------------------------ +# Creating new snapshot...(RSYNC) +# Saving to device: /dev/vdb1, mounted at path: /run/timeshift/backup +# Synching files with rsync... +# Created control file: /run/timeshift/backup/timeshift/snapshots/2020-04-29_10-25-35/info.json +# RSYNC Snapshot saved successfully (6s) +# Tagged snapshot '2020-04-29_10-25-35': ondemand +------------------------------------------------------------------------------ +``` + +Open timeshift and see whether there are `maxSnapshots` packages: +![Timeshift](timeshift-autosnap-apt.png) + +Close timeshift and reinstall the package another time and you should see that the first package is now deleted: +```bash +sudo apt install --reinstall rolldice +# +# Using system disk as snapshot device for creating snapshots in BTRFS mode +# /dev/dm-1 is mounted at: /run/timeshift/backup, options: rw,relatime,compress=zstd:3,ssd,space_cache,commit=120,subvolid=5,subvol=/ +# Creating new backup...(BTRFS) +# Saving to device: /dev/dm-1, mounted at path: /run/timeshift/backup +# Created directory: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-53-25 +# Created subvolume snapshot: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-53-25/@ +# Created subvolume snapshot: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-53-25/@home +# Created control file: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-53-25/info.json +# BTRFS Snapshot saved successfully (0s) +# Tagged snapshot '2020-04-29_09-53-25': ondemand +# ------------------------------------------------------------------------------ +# +# /dev/dm-1 is mounted at: /run/timeshift/backup, options: rw,relatime,compress=zstd:3,ssd,space_cache,commit=120,subvolid=5,subvol=/ +# +# ------------------------------------------------------------------------------ +# Removing snapshot: 2020-04-29_09-46-30 +# Deleting subvolume: @home (Id:662) +# Deleted subvolume: @home (Id:662) +# +# Destroying qgroup: 0/662 +# Destroyed qgroup: 0/662 +# +# Deleting subvolume: @ (Id:661) +# Deleted subvolume: @ (Id:661) +# +# Destroying qgroup: 0/661 +# Destroyed qgroup: 0/661 +# +# Deleted directory: /run/timeshift/backup/timeshift-btrfs/snapshots/2020-04-29_09-46-30 +# Removed snapshot: 2020-04-29_09-46-30 +# ------------------------------------------------------------------------------ +``` +or for RSYNC: + +```bash +# /dev/vdb1 is mounted at: /run/timeshift/backup, options: rw,relatime +# +# ------------------------------------------------------------------------------ +# Creating new snapshot...(RSYNC) +# Saving to device: /dev/vdb1, mounted at path: /run/timeshift/backup +# Linking from snapshot: 2020-04-29_10-25-15 +# Synching files with rsync... +# Created control file: /run/timeshift/backup/timeshift/snapshots/2020-04-29_10-25-35/info.json +# RSYNC Snapshot saved successfully (6s) +# Tagged snapshot '2020-04-29_10-25-35': ondemand +# ------------------------------------------------------------------------------ +# +# /dev/vdb1 is mounted at: /run/timeshift/backup, options: rw,relatime +# +# ------------------------------------------------------------------------------ +# Removing '2020-04-29_10-24-35'... +# Removed '2020-04-29_10-24-35' +# ------------------------------------------------------------------------------ +``` + +## Ideas and contributions +- [x] Ask to be included into official Timeshift package, [status pending](https://github.com/teejee2008/timeshift/issues/595). +- [ ] Add systemd-boot entry to boot into automatically generated snapshots (test on Pop!_OS) +- [ ] Add grub boot entry to boot into automatically generated snapshots, similar to ARCH package [grub-btrfs](https://github.com/Antynea/grub-btrfs) (test on Ubuntu) + +**All new ideas and contributors are welcomed, just open an issue for that!** + diff --git a/timeshift-autosnap-apt b/timeshift-autosnap-apt new file mode 100755 index 0000000..e77eb68 --- /dev/null +++ b/timeshift-autosnap-apt @@ -0,0 +1,57 @@ +#!/bin/bash +#original author: gobonja +#adapted for apt by Willi Mutschler (wmutschl) + +[ $(findmnt / -no fstype) == "overlay" ] && { echo "==> skipping timeshift-autosnap because system is booted in Live CD mode..."; exit 0; } + +[[ -v SKIP_AUTOSNAP ]] && { echo "==> skipping timeshift-autosnap due SKIP_AUTOSNAP environment variable being set."; exit 0; } + +readonly CONF_FILE=/etc/timeshift-autosnap-apt.conf +readonly SNAPSHOTS_TO_DELETE=$(mktemp -u --tmpdir ${0##*/}.XXXXXXXX) + +readonly SNAPSHOT_NAME_DATE_PATTERN="[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}_[0-9]\{2\}-[0-9]\{2\}-[0-9]\{2\}" + +get_property() { + if [ ! -f $CONF_FILE ]; then + echo "$CONF_FILE not found! Using $1=$3" >&2; + param_value=$3 + else + param_value=`sed '/^\#/d' $CONF_FILE | grep $1 | tail -n 1 |\ + cut -d "=" -f2- | sed 's/^[[:space:]]*//;s/[[:space:]]*$//'` + + if ([ "$2" == "boolean" ] && [ "$param_value" != true ] && [ "$param_value" != false ]) || \ + ([ "$2" == "integer" ] && [[ ! "$param_value" =~ ^[-+]?([1-9][[:digit:]]*|1)$ ]]) || \ + ([ "$2" == "string" ] && [ "$param_value" == "" ]) ; then + echo "Wrong paramater in $CONF_FILE. Using $1=$3" >&2 + param_value=$3 + fi + fi + + echo $param_value +} + +if $(get_property "skipAutosnap" "boolean" "false") ; then + echo "==> skipping timeshift-autosnap-apt due skipAutosnap in $CONF_FILE set to TRUE." >&2; exit 0; +fi + +readonly SNAPSHOT_DESCRIPTION=$(get_property "snapshotDescription" "string" "{timeshift-autosnap-apt} {created before upgrade}") + +timeshift --create --comments "$SNAPSHOT_DESCRIPTION" || { echo "Unable to run timeshift-autosnap-apt! Please close Timeshift and try again. Script will now exit..." >&2; exit 1; } + +if $(get_property "deleteSnapshots" "boolean" "true") ; then + timeshift --list > $SNAPSHOTS_TO_DELETE + sed -ni "/$SNAPSHOT_DESCRIPTION/p" $SNAPSHOTS_TO_DELETE + sed -ni "s/.*\($SNAPSHOT_NAME_DATE_PATTERN\).*/\1/p" $SNAPSHOTS_TO_DELETE + + count=$(($(sed -n '$=' $SNAPSHOTS_TO_DELETE)-$(get_property "maxSnapshots" "integer" "3"))) + + if [ "$count" -gt 0 ] ; then + sed -i $(($count))q $SNAPSHOTS_TO_DELETE + + for snapshot in $(cat $SNAPSHOTS_TO_DELETE); do + timeshift --delete --snapshot $snapshot + done + fi +fi; + +exit 0 diff --git a/timeshift-autosnap-apt.conf b/timeshift-autosnap-apt.conf new file mode 100644 index 0000000..e6ebe71 --- /dev/null +++ b/timeshift-autosnap-apt.conf @@ -0,0 +1,20 @@ +# +# /etc/timeshift-autosnap.conf +# + +# skipAutosnap defines if timeshift-autosnap execution should be skipped. +# Default value is false. +skipAutosnap=false + +# deleteSnapshots defines if old snapshots should be deleted. +# Default value is true. +deleteSnapshots=true + +# maxSnapshots defines how much old snapshots script should left. +# Only positive whole numbers can be used. +# Default value is 3. +maxSnapshots=3 + +# snapshotDescription defines value used to distinguish snapshots created using timeshift-autosnap +# Default value is "{timeshift-autosnap} {created before upgrade}". +snapshotDescription={timeshift-autosnap-apt} {created before upgrade} diff --git a/timeshift-autosnap-apt.png b/timeshift-autosnap-apt.png new file mode 100644 index 0000000000000000000000000000000000000000..9c9256d737e86a4d1953be5178f9aca7d001ca38 GIT binary patch literal 58891 zcmb@uWk6MJw>7*`1VKu=5l|43loAOgL?i{ILt0u=q?MKuQM!>X5$Tdn3F!urmX@w> zF7M|#=Q)4Q_x?EhhquDsYp-=(^O|#vF~__E73HOHu_>`pC={;rBMBuG3jF|ux)635 z1Aemk*Z}0u@cS?K;(#(IDuFZaaI&kPY)!jC7`C9+G zU7YVfUO8c1c6Qp1zM6aM7V8roor@)!R&HPa>vJk$kFLK-$Y+a>r{3yMnU4H5QFBa# zL1x-3V~s1fY1<{t@UK^@>W_Hs z_Mz@g0g$8wH{~%`NK+O-92c<#9Xh5isIiRD!umAl*0iJrztAQW8#)A z5nNQ`eP+!CW$&O6T~EyyT)y;-V?Mm%1W(d#u7?>L{UdQf{BXeo|DFLcfKAUA0Hm^F)+!=x^+#9 z1%)aK!OiG#!)~Oby;Pwc>X=)1e{4-FwSY!+B+Nk${LF$J?)IwrDvlEh`xnsO53rOd6}Y+TCaSViiV;R1c^2 z@dnAk(V^kW+?|q^BKCmr_69|xC zcvI$mfz~Ocm09)V5B7j$Ho>c1FQbl1(Fj-HvXq16j}JRtM_6X(lQ}iC|FuiD&62+A zr=!db{m#Q@t`yT&>S4v1@+g#0O-Vof1jm(GYZS+`83dN>|tvd9Z;(=}t{)&Ix$#;TVySG)!x}0 z@@ZE_R{50fZA&&$>t{y&ouql0bj5*z{b+XD~mP9mG--Wja98+!)&T z2uCS=x`x6!YT^u566}e(m-rjC6~u-uqHpVM#ktJ81RQWz{0c>mGt(Pxz{kHlP9GFh zGQ&$a`yHwE0UJf|%1?~@@O&_|o!RDuSTC^POYk@LN+eR&zD-V0qrAcj>AtKRU0apM z*xp%ZI(6O=>&4xXd<3 z>DI%!{QY>s{JmWuvNDvsUO|_-$wxIbJ^fNCS5Bx(I0g>txb}&w7R0&Dc$2ftRl0pI zm_|5F8UJ$!2?xK^K1QF4a$Iv!#8J6LqGWv?x%vm`^Z>VH4kp>e3xN`ESfkiyS~vJ& zEvv9Zo93FM$Y$%a&|cWv`%5sq7SpeMkoNbx-zODMat_qtl>QV|c6dv3-tS!BVQ`Z$ z(Tt};^F~9D#yV3-d+*f`{z8W%J`qfl+z={%U*RM!pMr=L{D>(^))!P1PGVP0dcSDB z+z7k$A}4!Z0E6z|Z+voxy4&`SfVA3hxc1zT1@=GT_V>5E{qV_Ooj0OMwY3YY3ix<$ zT_xYOG2*V=*?tOio}WB8*f4yNcA6F4WJSt z27G7|7;!solIehyT|1zwtIMU|X>H86sY&9Bq{P^VsHnNMvgwvUB4$mM?$7#-pADL^ z%gf87Z*p_D^oX7Z?@zfZtX8`p@97U0=;TvBY2EC;w=whW^+lJc_KuF9%7ts+O0C9U ztPEtk^cxr&#>^BaudJ9`PF9ix1_riucMny{E_Nqu{fba9IQp}E(i{ɠI_?IWzE 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 literal 0 HcmV?d00001