File: //usr/local/bin/backup_vm.sh.bak
#!/bin/bash
data=`date +%Y-%m-%d`
backup_dir=/backup
##vm=`virsh list | grep . | awk '{print $2}'| sed 1,2d | grep -vf /root/bin/exclude | tr -s '\n' ' '`
vm=`virsh list | grep . | awk '{print $2}'| sed 1,2d`
for activevm in $vm
do
echo $activevm
##mkdir -p $backup_dir/$activevm
# Бэкапим конфигурацию XML для виртуальной машины
##virsh dumpxml $activevm > $backup_dir/$activevm/$activevm-$data.xml
# Список дисков виртуальных машин
disk_list=`virsh domblklist $activevm | grep vd | awk '{print $1}'`
# Адрес дисков виртуальных машин
disk_path=`virsh domblklist $activevm | grep vd | awk '{print $2}'`
echo $disk_list
echo $disk_path
# Создаем снапшот диcков
##virsh snapshot-create-as --domain $activevm snapshot --disk-only --atomic --quiesce --no-metadata
##sleep 3
##for path in $disk_path
##do
# Убираем имя файла из пути
##filename=`basename $path`
# Создаем бэкап диска
##gzip -c $path > $backup_dir/$activevm/$filename-$data.gz
##sleep 3
##done
##for disk in $disk_list
##do
# Определяем путь до снепшота
##snapshot=`virsh domblklist $activevm | grep $disk | awk '{print $2}'`
# Объединяем снапшот с диском
##virsh blockcommit $activevm $disk --active --verbose --pivot
##sleep 2
# Удаляем снепшот
##rm -rf $snapshot
##done
done
##/usr/bin/find /backup/ -type f -mtime +7 -exec rm -rf {} \;