Mudanças entre as edições de "Backup server"

De MochilaWiki
Ir para navegaçãoIr para pesquisar
 
(9 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) ==
Linha 12: Linha 12:
 
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 05h33min 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