Skip to content

Instantly share code, notes, and snippets.

@elmendalerenda
Created November 11, 2012 10:51
Show Gist options
  • Save elmendalerenda/4054527 to your computer and use it in GitHub Desktop.
Save elmendalerenda/4054527 to your computer and use it in GitHub Desktop.
backup proxmox vms
#!/bin/sh
RUTA_DUMPS="/var/lib/vz/dump/"
MAXIMO_COPIAS=5
for VZ_ID in `vzlist -1` ; do
VZ_HOSTNAME=`vzlist -o hostname -H ${VZ_ID}`
VZ_IP=`vzlist -o ip -H ${VZ_ID}`
VZ_DUMP="/var/lib/vz/dump/${VZ_HOSTNAME}_"`date '+%d%m%y%H%M%S'`".tgz"
echo ""
echo "vzid ${VZ_ID}"
echo "host ${VZ_HOSTNAME}"
echo "ip.ad ${VZ_IP}"
echo "dump ${VZ_DUMP}"
echo ""
#: descartando copias viejas
TOTAL_COPIAS=`ls ${RUTA_DUMPS}${VZ_HOSTNAME}* | wc -l`
NUMERO_DESCARTADOS=`echo "${TOTAL_COPIAS} - ${MAXIMO_COPIAS}" | bc`
if [ "${TOTAL_COPIAS}" -gt "${MAXIMO_COPIAS}" ]
then
DESCARTADOS=`ls ${RUTA_DUMPS}${VZ_HOSTNAME}* | tail -n ${NUMERO_DESCARTADOS}`
for descartado in ${DESCARTADOS} ; do rm -f $descartado ; done
fi
#: backuping
vzctl set ${VZ_ID} --ipdel all --save
cd /var/lib/vz/private/${VZ_ID}
tar cvzf ${VZ_DUMP} .
vzctl set ${VZ_ID} --ipadd ${VZ_IP} --save
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment