From 2aba6a425535d7564fae7ab1ad904b10b3a629e1 Mon Sep 17 00:00:00 2001 From: Simon Cornet Date: Wed, 19 Jun 2019 09:18:15 +0200 Subject: [PATCH] [VMBACKUP] Added single VM backup file --- FreeBSD/vm-backup-single | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 FreeBSD/vm-backup-single diff --git a/FreeBSD/vm-backup-single b/FreeBSD/vm-backup-single new file mode 100644 index 0000000..3838074 --- /dev/null +++ b/FreeBSD/vm-backup-single @@ -0,0 +1,47 @@ +#!/bin/csh + +## config section +set vm = $1 +set vm_dataset = "zroot/vms" +set backup_dataset = "tank/backup/bhyve" +set backup_date = `date "+%Y-%m-%d_%H:%M"` + +# Snapshot all VMs +echo "" +echo "################# SNAPSHOT VM #################" + +## stopping vm +vm stop $vm + +## give vm time to shut down properly +sleep 15 + +## snapshot vm +echo "Snapshot VM: $vm" +zfs snapshot $vm_dataset/$vm@$backup_date +echo "" + +## start VM +vm start $vm +echo "" + +# Backup all VM snapshots +echo "" +echo "################## BACKUP VM ##################" + +## Create ZFS dataset +echo "Creating destination dataset for $vm" +zfs create $backup_dataset/$vm-$backup_date + +## Send snapshot to backup destination +echo "Backup VM: $vm" +zfs send $vm_dataset/$vm@$backup_date | zfs recv -F $backup_dataset/$vm-$backup_date +echo "" + +## Delete snapshot +zfs destroy $vm_dataset/$vm@$backup_date + +# report done +echo "" +echo "############### ALL DONE THANKS ###############" +echo "" \ No newline at end of file