четверг, 23 июня 2016 г.

Делаем backup virtualbox VM по-неправильному

Исходные данные: 
Xubuntu 14.04 server (64 разряда), на нем virtualbox с единственной VM, и это, как легко догадаться, Win-server.


  Тому, как бэкапить винду ее собственными средствами посвящены гигабайты в других местах, дело это простое и понятное... ровно до того момента как ее нужно восстанавливать... Отсюда и есть пошла виртуализация, и копирование VM (Виртуальной машины) целиком. Если все делать совсем правильно, следует ознакомится с этой вот статьей в качестве примера. Можно еще подумать в сторону lvm.
  Мы будем делать не правильно и по-тупому - приостановил, скопировал, отпустил работать дальше. Собственно скрипт (запуск по четвергам из крона чуть за полночь).

#!/bin/bash

# DEFAULTS
OLDFILE=10

# Config file in $1, if absent - default config from /usr/local/etc/vm/vm.conf
if [ ! -z ${1} ] ; then
 test -r ${1} && . ${1}
else
. /usr/local/etc/vm/vm.conf
fi

# Remove olds
icount=0
for i in `ls -r $BACKUPDIR/vm-$VBOXNAME-20*` ; do
 if [ $((icount++)) -ge $((OLDFILE))  ] ; then
  rm -f "$i"
  echo "$i" " removed"
 fi
done

echo `date +%F%t%X` "stop vm"
VBoxManage controlvm ${VBOXNAME} savestate
sync
sleep 10
echo `date +%F%t%X` "tar vm"
DATETIMENOW=`date -I`
tar cvf $BACKUPDIR/vm-$VBOXNAME-$DATETIMENOW.tar $VBOXPATH
sync
sleep 10
echo `date +%F%t%X` "start vm"
VBoxHeadless --startvm ${VBOXNAME} &
nice gzip $BACKUPDIR/vm-$VBOXNAME-$DATETIMENOW.tar
echo `date +%F%t%X` "tar gziped"
~
И к нему конфиг
# settings
VBOXPATH="/home/storage/virtualbox"
VBOXDVD="host:/dev/cdrom"
VBOXNAME="Win2008r2"
VBOXOS="Windows2008_64"
VBOXRDEADDR="10.0.0.1"
VBOXRDEPORT="3389"
BACKUPDIR=/home/storage/backup/vms
OLDFILE=15
  Конфиг общий для скриптов управления и бэкапа. Это традиция. Что касается скрипта, в самом начале или конфиг из файла, имя которого передается в качестве аргумента при запуске, или по умолчанию. Потом стирание старых копий. Потом приостановка - копирование - запуск. Ну и в конце ужимаем полученный архив (жмется в 3 раза, есть смысл).

Комментариев нет:

Отправить комментарий