[BACKUP] Added ZFS datastore backup script
This commit is contained in:
parent
235374c222
commit
adafb29bab
35
FreeBSD/storage/zfs-dataset-backup.bash
Normal file
35
FreeBSD/storage/zfs-dataset-backup.bash
Normal file
@ -0,0 +1,35 @@
|
||||
#!/usr/local/bin/bash
|
||||
|
||||
## config section
|
||||
dataset_orig=$1
|
||||
dataset_name=$(echo $dataset_orig | sed -e 's/\//-/g')
|
||||
backup_location="/tank/backup/datasets"
|
||||
backup_date=`date "+%Y-%m-%d"`
|
||||
enc_password="supersecretstuff"
|
||||
|
||||
echo ""
|
||||
echo "################## SNAPSHOT ###################"
|
||||
echo "Making a snapshot of $dataset_orig"
|
||||
|
||||
## create snapshot
|
||||
zfs snapshot $dataset_orig@$backup_date
|
||||
|
||||
# backup vm snapshot
|
||||
echo ""
|
||||
echo "################## BACKUP VM ##################"
|
||||
echo "Send snapshot to local backup destination"
|
||||
|
||||
## send snapshot to backup destination
|
||||
zfs send $dataset_orig@$backup_date | \
|
||||
pigz -c -p 4 | \
|
||||
openssl enc -aes-256-ctr -a -pbkdf2 -iter 1000 -salt -k $enc_password \
|
||||
> $backup_location/$dataset_name-$backup_date.pigz.enc
|
||||
|
||||
## delete snapshot
|
||||
#sleep 1
|
||||
zfs destroy $dataset_orig@$backup_date
|
||||
|
||||
# report done
|
||||
echo ""
|
||||
echo "############### ALL DONE THANKS ###############"
|
||||
echo ""
|
Loading…
Reference in New Issue
Block a user