Backup de Repositórios Subversion
Publicado por Eduardo Martins 01/08/2007
[ Hits: 6.839 ]
Homepage: http://www.emartins.org
Este script efetua o DUMP (backup da base de dados) dos repositórios do subversion e os envia para uma máquina windows com uma pasta compartilhada.
Ele salva o backup em uma pasta para cada dia da semana e cria um arquivo tar.bz2 (também para cada dia da semana).
Você pode modificar o script para, por exemplo, gravar em um CD/DVD, basta modificar as linhas onde o arquivo é copiado para a pasta na rede.
#!/bin/sh #-------------------------------------------------------------- # Script para executar o dump dos repositorios do subversion # copia para uma pasta compartilhada na rede # # autor: Eduardo Martins <martins.rs@gmail.com> #-------------------------------------------------------------- # Variaveis de Backup USERNAME=guest; PASSWORD=guest; DESTINO=//10.0.0.1/backup; PTO_MONTAGEM=/mnt/backup; #Onde Gravar o Backup ID_PASTA_BKP=$(date +%u); PASTA_BKP[1]=2; PASTA_BKP[2]=3; PASTA_BKP[3]=4; PASTA_BKP[4]=5; PASTA_BKP[5]=6; HOJE=$(date +%a); TMP_DIR=/tmp #Subversion REPO_DIR=/subversion/repositorios; DUMP_DIR=/tmp/subversion; #monta unidade rede mount -t smbfs -o username=$USERNAME,password=$PASSWORD $DESTINO $PTO_MONTAGEM ; #apaga os dumps antigos rm -fr $DUMP_DIR/*.dump; #comeca os dumps dos repositorios echo "Efetuando DUMP dos Repositorios"; #lista o diretorio dos repositorios for files in `ls $REPO_DIR`; do #lista somente os diretorios for dir in `ls -o $REPO_DIR | grep ^d`; do #compara os nomes para pegar apenas o nome do repositorio if [ `basename $dir` == "$files" ]; then #exclui o diretorio . if [ "$dir" != "./" ] ; then if [ "$dir" != "$REPO_DIR" ]; then REPOSITORIO=`basename "$dir"`; echo "Repositorio: $REPOSITORIO"; svnadmin dump $REPO_DIR/$REPOSITORIO > $DUMP_DIR/$REPOSITORIO.dump; echo "--" break; fi fi fi done done echo "DUMP Concluido..."; echo ""; #compacta os dumps echo "Compactando arquivos..."; tar cfj $TMP_DIR/subversion_bkp_$HOJE.tar.bz2 $DUMP_DIR; #copia para a maquina windows echo "Copiando arquivo..."; cp $TMP_DIR/subversion_bkp_$HOJE.tar.bz2 $PTO_MONTAGEM/${PASTA_BKP[$ID_PASTA_BKP]}; echo "Copia Concluida!"; #desmonta unidade rede umount $PTO_MONTAGEM; echo ""; #remove os arquivos criados echo "removendo arquivos temporarios..."; rm -fr $TMP_DIR/subversion_bkp_$HOJE.tar.bz2; echo ""; echo "Backup Terminado..."; #Desfazer variaveis unset USERNAME; unset PASSWORD; unset DESTINO; unset PTO_MONTAGEM; unset ID_PASTA_BKP; unset PASTA_BKP; unset HOJE; unset TMP_DIR; unset REPO_DIR; unset DUMP_DIR; unset REPOSITORIO; unset files; unset dir;
Script para gravar DVD, gera imagem e grava na mídia
syncnow - sincronizar diretórios com servidor local
Instalação - Servidor de e-mail
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Primeira vez utilizando Linux Ubuntu 22.04 e já tenho problemas… (3)
warsaw parou de funcionar após atualização do sistema (solução) (1)
Separar trafego da VPN da VPS (0)
Formatando cartão de memoria que nao formata[AJUDA] (17)
Desde que seja DDR3, posso colocar qualquer memória? [RESOLVIDO] (6)