diff options
Diffstat (limited to 'alpine.sh')
| -rwxr-xr-x | alpine.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/alpine.sh b/alpine.sh new file mode 100755 index 0000000..11ab4b1 --- /dev/null +++ b/alpine.sh @@ -0,0 +1,27 @@ +#!/bin/sh +# this requires the gnu tools: +# apk add coreutils tar +IFS=' +' +_paths='/etc +/home +/root +/var/acme +/var/service +/var/sshkeys +/var/spool/cron' + +_file_list="$(mktemp)" +ref="$(mktemp)" +trap 'rm "$list" "$ref"' EXIT INT +touch -d '-24 hours' "$ref" +trap 'rm -f "$_file_list"' EXIT INT + +if [ "$1" = daily ] ; then + find $_paths -newer "$ref" -print0 > "$_file_list" +else + find $_paths -print0 > "$_file_list" +fi + +tar --null -T "$_file_list" -cf - \ + | zstd -3c |
