|
|
|
@@ -0,0 +1,67 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
usage() |
|
|
|
{ |
|
|
|
echo "Usage: $0 -z UUID" >&2 |
|
|
|
exit 1 |
|
|
|
} |
|
|
|
|
|
|
|
while getopts "z:" opt; |
|
|
|
do |
|
|
|
case "$opt" in |
|
|
|
z) |
|
|
|
UUID=$OPTARG |
|
|
|
;; |
|
|
|
*) |
|
|
|
usage |
|
|
|
;; |
|
|
|
esac |
|
|
|
done |
|
|
|
|
|
|
|
shift $((OPTIND-1)) |
|
|
|
|
|
|
|
if [ -z "${UUID}" ]; then |
|
|
|
usage |
|
|
|
fi |
|
|
|
|
|
|
|
BRAND=`/usr/sbin/vmadm get $UUID | json brand | tr -d '\n'` |
|
|
|
|
|
|
|
RUTADESTINO="/zones/tools/mounts" |
|
|
|
RUTAORIGEN="/export/ftpbackup/ns3043697.ip-164-132-169.eu" |
|
|
|
SERVIDOR="ftpback-rbx3-470.ovh.net" |
|
|
|
|
|
|
|
mkdir -p $RUTADESTINO |
|
|
|
mount $SERVIDOR:$RUTAORIGEN $RUTADESTINO |
|
|
|
|
|
|
|
if [ $? != 0 ]; then |
|
|
|
echo "MOUNT FAILED." |
|
|
|
umount $RUTADESTINO |
|
|
|
exit |
|
|
|
fi |
|
|
|
|
|
|
|
mkdir -p $RUTADESTINO/$UUID |
|
|
|
|
|
|
|
if [ $? != 0 ]; then |
|
|
|
echo "FAIL TO CREATE FOLDER $UUID." |
|
|
|
umount $RUTADESTINO |
|
|
|
exit |
|
|
|
fi |
|
|
|
|
|
|
|
# mantenemos los backups de los ultimos dos dias |
|
|
|
find $RUTADESTINO/$UUID -type f -mtime +3 -delete |
|
|
|
|
|
|
|
snapshot() |
|
|
|
{ |
|
|
|
/usr/sbin/zfs snapshot zones/$1@`date +%Y%m%d` |
|
|
|
/usr/sbin/zfs send zones/$1@`date +%Y%m%d` > $RUTADESTINO/$UUID/$1@`date +%Y%m%d` |
|
|
|
} |
|
|
|
|
|
|
|
snapshot $UUID |
|
|
|
|
|
|
|
if [ $BRAND = "kvm" ]; then |
|
|
|
snapshot $UUID-disk0 |
|
|
|
fi |
|
|
|
|
|
|
|
/usr/sbin/zonecfg -z $UUID export > $RUTADESTINO/$UUID/$UUID.`date +%Y%m%d`.cfg |
|
|
|
|
|
|
|
umount $RUTADESTINO |