Backup server: mudanças entre as edições

De MochilaWiki
Ir para navegaçãoIr para pesquisar
Sem resumo de edição
Sem resumo de edição
 
(10 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
Implementei nos servidores um esquema de backup:
Implementei nos servidores um esquema de backup:


O backup diário, local, é feito com o script [http://lovato.com.br/2011/02/utilizando-o-rsync-para-fazer-backup-estilo-time-machine/ backup.sh], feito por Roger Lovato, e são enviado para /srv/backup/storage e dentro de /srv/backup/db tem os backup do banco de dados feito com o [[Automysqlbackup]]. Os dois scripts são agendados para roda uma vez por dia, de madrugada, com diferença de uma hora um do outro. Depois disso roda o terceiro script, enviando /srv/backup/ (menos as pastas "tmp") para um servidor remoto.
O backup diário, local, é feito com o script [[backup.sh]] e é enviado para /srv/backup/storage e dentro de /srv/backup/db tem os backup do banco de dados feito com o [[Automysqlbackup]]. Os dois scripts são agendados para roda uma vez por dia, de madrugada, com diferença de uma hora um do outro. Depois disso roda o terceiro script, enviando /srv/backup/ (menos as pastas "tmp") para um servidor remoto.


crie um par de chaves para ssh sem senha (não digite senha quando pedir)
== crie um par de chaves para ssh sem senha (não digite senha quando pedir) ==
<source lang="bash">
<source lang="bash">
ssh-keygen -t dsa -f ~/.ssh/id_dsa
ssh-keygen -t dsa -f ~/.ssh/id_dsa
</source>
</source>


envia a chave pro servidor, para autorização automática
== envia a chave pro servidor, para autorização automática ==
<source lang="bash">
<source lang="bash">
cat ~/.ssh/id_dsa.pub | ssh banto@192.168.56.101 'cat - >> ~/.ssh/authorized_keys'
cat ~/.ssh/id_dsa.pub | ssh banto@192.168.56.101 'cat - >> ~/.ssh/authorized_keys'
</source>
</source>
== em /usr/local/bin/backup ==
<source lang="bash">
#!/bin/bash
#
MAIL="seu@email.com.br"
DATA=`date +%Y/%m/%d`
rsync -Hxpagouvt /srv/backup --rsh='ssh -p6969' --exclude 'tmp' banto@192.168.56.101:.
mutt -s "Backup $DATA" $MAIL < /usr/local/backup/bkp-ultimo
</source>
== em /etc/crontab ==
<source lang="bash">
35 2  * * *  root    /usr/local/bin/automysqlbackup.sh >/dev/null 2>&1
35 3  * * *  root    /usr/local/backup/backup.sh >/dev/null 2>&1
35 4  * * *  root    /usr/local/bin/backup >/dev/null 2>&1
</source>
== Referências ==
* [http://articles.slicehost.com/2007/10/10/rsync-exclude-files-and-folders dica de utilização do rsync]
* [http://www.devin.com.br/crontab/ dica de utilização do cron]
* [http://elcio.com.br/ssh-sftp-e-rsync-em-porta-diferente-do-padrao/ rsync + ssh != port 22]
[[Categoria:Backup]]

Edição atual tal como às 02h33min de 10 de novembro de 2012

Implementei nos servidores um esquema de backup:

O backup diário, local, é feito com o script backup.sh e é enviado para /srv/backup/storage e dentro de /srv/backup/db tem os backup do banco de dados feito com o Automysqlbackup. Os dois scripts são agendados para roda uma vez por dia, de madrugada, com diferença de uma hora um do outro. Depois disso roda o terceiro script, enviando /srv/backup/ (menos as pastas "tmp") para um servidor remoto.

crie um par de chaves para ssh sem senha (não digite senha quando pedir)

ssh-keygen -t dsa -f ~/.ssh/id_dsa

envia a chave pro servidor, para autorização automática

cat ~/.ssh/id_dsa.pub | ssh banto@192.168.56.101 'cat - >> ~/.ssh/authorized_keys'

em /usr/local/bin/backup

#!/bin/bash
#
MAIL="seu@email.com.br"
DATA=`date +%Y/%m/%d`

rsync -Hxpagouvt /srv/backup --rsh='ssh -p6969' --exclude 'tmp' banto@192.168.56.101:.

mutt -s "Backup $DATA" $MAIL < /usr/local/backup/bkp-ultimo

em /etc/crontab

35 2   * * *   root    /usr/local/bin/automysqlbackup.sh >/dev/null 2>&1
35 3   * * *   root    /usr/local/backup/backup.sh >/dev/null 2>&1
35 4   * * *   root    /usr/local/bin/backup >/dev/null 2>&1

Referências