Backup Subversion

Publicado por Augusto Hagiro Pascutti 19/09/2008

[ Hits: 10.339 ]

Homepage: www.augustopascutti.com

Download svn_backup.sh




Script para fazer backup de múltiplos repositórios subversion em arquivos GZ separados .

  



Esconder código-fonte

#!/bin/bash
#
# #version 0.1
# @descr Script de backup dos repositorios subversion
# @author Augusto Pascutti <augusto.hp@gmail.com>

# -------------------------------------------------------
# Config
# -------------------------------------------------------
DIR_SVN=/usr/lib/svn/
DIR_TMP=/tmp/
LOG_FILE=/var/log/svn_backup.log

# -------------------------------------------------------
# functions
function e {
    echo $*;
    echo "$*" >> ${LOG_FILE};
}

# -------------------------------------------------------

if [ ! -d $DIR_SVN ]; then
    e "svn_backup: Diretorio svn invalido !";
fi;

if [ ! -d $DIR_TMP ]; then
    e "svn_backup: Diretorio temporario invalido !";
fi;

e `date`;
e "Iniciando backup dos repositorios ....";
REPOS="";
for repositorio in `ls "${DIR_SVN}"`; do
    TEST_PATH="${DIR_SVN}${repositorio}";
    echo -n "Verificando '${TEST_PATH}' ... ";
    if [ ! -d "${TEST_PATH}" ]; then echo " non-dir"; continue; fi;
    echo -n " verificando svn ... ";
    if [ ! -d "${TEST_PATH}/db" ]; then echo "non-svn"; continue; fi;
    echo "ok";
    REPOS="${REPOS} {$repositorio}";
    NAME_DUMP="${DIR_TMP}${repositorio}.svn.dump";
    NAME_FINAL="${DIR_TMP}${repositorio}.svn.dump.gz";
    echo -n "    Repo: ${repositorio} -> dump ";
    svnadmin dump -q "${TEST_PATH}" > "${DIR_TMP}${repositorio}.svn.dump" > /dev/null 2>> ${LOG_FILE};
    if [ ! $? -eq 0 ]; then echo "[error]"; continue; fi;
    echo -n "-> tarball ";
    tar -czf "${NAME_FINAL}" "${NAME_DUMP}" > /dev/null 2>> ${LOG_FILE};
    if [ ! $? -eq 0 ]; then echo "[error]"; continue; fi;
    echo -n "-> limpando";
    rm -f "${NAME_DUMP}" > /dev/null 2>> ${LOG_FILE};
    if [ ! $? -eq 0 ]; then echo "[error]"; continue; fi;
    echo "-> ok";
done;

Scripts recomendados

Firewall funcional

Script para geração de mala direta usando svg

Script Backup ultimo arquivo criado em um diretorio feito TAR direto para DAT

Cálculo de número primo

Instalar TDE em sistemas Debian


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts