Отправляем бекап на другой сервер. Авторизация по ключу.
Для scp можно выставить лимит скорости. Еще можно сделать делать sleep для скрипта если время больше 9 утра и меньше 24.
#/bin/bash
USER=root
HOST=x.x.x.x
BACKUP_DIR=/home/backup
DATE=$(date +%F)
ssh $USER@$HOST "mkdir $BACKUP_DIR/$DATE"
ploop list | while read line
do
#split string to variables
IFS=" " set -- $line
ID_VPS=$(echo "$2" | egrep -o "[0-9]+" | sed 's/\///g')
echo $1 $ID_VPS
ploop snapshot -d /dev/$1 /vz/private/$ID_VPS/root.hdd/root.hdd.delta
# Если вдруг почему-то все упадет, не стартуем VPS, и далее руками делаем ploop merge
sed -i -e 's/ONBOOT="yes"/ONBOOT="no"/' /etc/sysconfig/vz-scripts/$ID_VPS.conf
# Отправляем все файлы VPS на другой сервер
ssh -n $USER@$HOST "mkdir $BACKUP_DIR/$DATE/$ID_VPS"
scp /vz/private/$ID_VPS/root.hdd/root.hdd $USER@$HOST:/$BACKUP_DIR/$DATE/$ID_VPS
scp /vz/private/$ID_VPS/root.hdd/DiskDescriptor.xml $USER@$HOST:/$BACKUP_DIR/$DATE/$ID_VPS
scp /etc/sysconfig/vz-scripts/$ID_VPS.conf $USER@$HOST:/$BACKUP_DIR/$DATE/$ID_VPS
ploop merge -d /dev/$1 -l 0..1
# Так как сделали ploop merge вернем как было
sed -i -e 's/ONBOOT="no"/ONBOOT="yes"/' /etc/sysconfig/vz-scripts/$ID_VPS.conf
rm -f /vz/private/$ID_VPS/root.hdd/root.hdd.delta
done
[Updated on: Sat, 08 December 2012 21:42]
Report message to a moderator