Como fazer backup do Subversion e do Trac de forma simples! 2 de outubro de 2007
Este será um artigo bem curto, não vou discutir qual é a melhor forma de fazer backup do Subversion, apenas vou mostrar como eu faço! Juntamente com o Subversion eu também faço backup da pasta do Trac.
No meu computador todos os projetos do Subversion encontram-se em “/var/lib/svn/” e os projetos do Trac em “/var/lib/trac/”, portanto fica simples fazer o backup, que no meu caso é para minha pendrive.
O script que eu utilizo é:
#!/bin/bash
PENDIR=”/media/MY FILES/”
BKPDIR=$PENDIR”backup/”
BASEDIR=”/var/lib/”
SVNPATH=$BASEDIR”svn/”
TRACPATH=$BASEDIR”trac/”
SVNCMD=”svnadmin -q”
TARCMD=”tar -czPf”
echo -n -e “\n *** Iniciando o procedimento de backup *** \n\n”
for project in projeto1 projeto2 projeto3; do
echo -n -e ” * Copiando subversion do projeto $project para $BKPDIR…”
$SVNCMD dump “$SVNPATH$project” > “$BKPDIR$project”".svndump”
echo -n -e ” OK!\n”
echo -n -e ” * Copiando trac do projeto $project para $BKPDIR…”
$TARCMD “$BKPDIR$project”"-trac.tar.gz” “$TRACPATH$project”
echo -n -e ” OK!\n”
done
echo -n -e “\n *** Finalizando backup *** \n\n”
Ou seja, o procedimento é simplesmente montar a pendrive na USB, e executar este script, caso você tenha algum dispositivo permanente de backup poderá agendar esse script no cron.
Se você está procurando apenas os comandos para backup use
$ svnadmin dump /var/lib/svn/projeto1 > projeto1.svndump
Para backup do Trac eu prefiro fazer do diretório completo, pois já vem com meus plugins e outras personalizações.
$ tar -czPf projeto1-trac.tar.gz /var/lib/trac/projeto1
Restaurando o backup
Para restaurar o backup do Subversion exige-se duas etapas, a primeira é criar o projeto vazio e depois carregar o dump salvo anteriormente.
$ sudo svnadmin create projeto1
$ sudo svnadmin load projeto1 < projeto1.svndump
Para restaurar o Trac basta descompactar o arquivo na pasta do Trac, que no meu caso é “/var/lib/trac/” e após isso seguir os passos de configuração ditos no meu outro artigo “Instalando o Trac e o Subversion em 12 passos no Ubuntu 7.04 (Feisty Fawn)”
Pronto! Seu computador está pronto para o trabalho novamente!
Meus parabéns, ajudou 100%.
Entre centenas de tutorias esse foi o melhor. Continue assim. Abraço.
Ola.. gostei mto do seu artigo. Tenho trabalhado com a adminstração do subversion como uma tarefa extra pois trabalho com Telecom na area de SOA. Só gostaria de saber de você (autor do script) se é possível eu usálo para uma migração? Vou citar um exemplo: Vamos supor que tenho um server que está instalado o subversion controlando todos os documentos e códigos do projeto. Este servidor precisa ser inativado por uma questao técnica. É possivel usar seu script para migrar (fazer o backup de todo o conteúdo mantendo o histórico de versões e logs) e criar um novo repo em outro server mudando inclusive o nome do repo e dando o import para este novo repo de nove diferente?
Vou tentar dizer mudando o seu código para esta alteração que quero fazer. Me corrija se eu estiver errado!
CRIANDO O DUMP DO REPO1 (BACKUP)
$ svnadmin dump /var/svn/repo1 > repo1.svndump
CRAINDO O NOVO REPO NO NOVO SERVER – REPO2
$ sudo svnadmin create repo2
$ sudo svnadmin load repo2 < repo1.svndump
PS: será necessário configurar o apache novamente no novo server, copiar o arquivo authz (Regras de acessos por repositório) para o novo server, etc.
Isso é possível de ser criado? Não vejo porque não!?
Outra pergunta! Tem como fazer o backup somente do diff? por exemplo, vamos supor q semanalmente eu faço o bakup do svn. Gostaria que fosse diário e que no diário fosse feito somente o que não está no Full (Semanal). Entende o que digo? Ainda nao achei uma solução para isso a não ser que eu grave em backup somente os arquivos de revisões ( /svn_repo_folder/db/revs/ ) que foram criados no dia de hoje por exemplo pelo comando:
find . -daystart -ctime -1 -print | cp {} /tmp/svn_daily_backup
Caso tenha uma idéia melhor, aguardo sua reposta!
vjbranco@gmail.com
[...] Para saber como fazer backup do SVN/Trac veja: como fazer backup [...]
[...] http://www.jornaldojerimum.com.br/2007/10/02/como-fazer-backup-do-subversion-e-do-trac-de-forma-simp... [...]
Excelente as dicas, vou utilizá-las com toda a certeza. Estou neste momento inclusive lendo pois terei uma migração de máquina nos próximos dias. Ajudou muito !!! Parabéns.