initial commit uwu
This commit is contained in:
commit
3b65c099f5
42
btrbk.sh
Normal file
42
btrbk.sh
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
pubKey="DB7D3FF57FB85CC81A1D4675371DB61AC29E4986"
|
||||||
|
subVols=("/" "/home")
|
||||||
|
volName=("root" "home")
|
||||||
|
snapDir="/.snapshots/"
|
||||||
|
rcloneDir="test:/mnt/bk/new/"
|
||||||
|
|
||||||
|
function main {
|
||||||
|
for i in ${!subVols[@]}
|
||||||
|
do
|
||||||
|
snapName=${volName[$i]}.$(date +%Y-%m-%d)
|
||||||
|
snapYest=$snapDir${volName[$i]}.$(date -d "yesterday" +%Y-%m-%d)
|
||||||
|
btrfs subvolume snapshot -r ${subVols[$i]} $snapDir$snapName
|
||||||
|
if [[ -d "$snapYest" && $bkType = daily ]]
|
||||||
|
then
|
||||||
|
btrfs send -p $snapYest $snapDir$snapName | gpg --batch -er $pubKey -o - | rclone rcat $rcloneDir$(date +%B)/$snapName.pgp
|
||||||
|
|
||||||
|
else
|
||||||
|
btrfs send $snapDir$snapName | gpg --batch -er $pubKey -o - | rclone rcat $rcloneDir$snapName.pgp
|
||||||
|
fi
|
||||||
|
if [[ $bktype = monthly ]]
|
||||||
|
then
|
||||||
|
for f in `seq 1 2`
|
||||||
|
do
|
||||||
|
btrfs subvolume delete $snapDir${volName[$i]}.$(date -d "$f days ago" +%Y-%m-%d)
|
||||||
|
done
|
||||||
|
rclone delete $rcloneDir$(date -d "1 month ago" +%B)/
|
||||||
|
else
|
||||||
|
btrfs subvolume delete $snapDir${volName[$i]}.$(date -d "2 days ago" +%Y-%m-%d)
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ `date +%d` != "01" ]
|
||||||
|
then
|
||||||
|
bkType=daily
|
||||||
|
main
|
||||||
|
else
|
||||||
|
bkType=monthly
|
||||||
|
main
|
||||||
|
fi
|
Loading…
Reference in a new issue