Usando o Dropbox para backup do servidor

O Dropbox é uma maneira surpreendentemente barata e eficiente de gerenciar suas necessidades (moderadas) de backup. A maravilhosa lógica de sincronização e controle de revisão do Dropbox torna o backup regular um pedaço de bolo, porque:

  • Ele só sincroniza quando o arquivo é realmente alterado – backups regulares não causarão tráfego de rede inútil
  • Você não tem que armazenar versões mais antigas e alterná-las – o Dropbox cuida do controle de versão, então você pode substituir o backup antigo com segurança
  • Basicamente, você apenas escreve (ou vincula) um arquivo e esquece dele

Meu exemplo é baseado neste belo artigo , com algumas alterações.

Primeiro, configure uma conta de usuário para o Dropbox, para que você não precise dar privilégios desnecessários ao dropbox proprietário . Usaremos /var/dropboxpara o diretório de sincronização.

# useradd dropbox -d /var/dropbox
# mkdir /var/dropbox
# chown dropbox /var/dropbox

Agora, baixe o script auxiliar para o diretório inicial (os pacotes tentariam obter dependências da GUI) e instale o daemon.

# su dropbox
$ cd

$ wget https
://www.dropbox.com/download?dl=packages/dropbox.py -O dropbox.py
$ chmod
+x dropbox.py
$
./dropbox.py start -i

Infelizmente dropbox.py não exibirá o URL de autenticação, então precisamos parar e iniciar o dropboxd diretamente para obtê-lo.

$ ./dropbox.py stop
$
.dropbox-dist/dropboxd

Após a configuração, isso criará uma Dropboxpasta e estamos configurados. Para evitar esse aborrecimento no futuro, sugiro usar o maravilhoso script de inicialização de James Coyle .

Supondo que você esteja usando usuários diferentes para serviços diferentes e queira manter o backup para esses usuários também, adicione cada usuário ao dropboxgrupo e adicione permissões de grupo à pasta de sincronização:

$ exit
# usermod -aG dropbox my-daemon-user
# su dropbox
$ chmod g
+rwx Dropbox

Desta forma, cada usuário pode criar sua própria pasta, que não pode ser adulterada por outras pessoas (dependendo da sua umask). Certifique-se de adicionar permissões de leitura de grupo aos arquivos, caso contrário dropboxd, não será possível sincronizá-los.

Depois disso, tudo que você precisa fazer é configurar seus trabalhos do cron para fazer os backups. Aqui está um exemplo de backup do meu banco de dados Trac a cada hora:

# su trac
$ mkdir
/var/dropbox/Dropbox/trac
$ crontab
-e

E a crontablinha:

0 * * * * * pg_dump trac > /var/dropbox/Dropbox/trac/trac_dump.pgsql

E é isso! A cada hora, meu banco de dados é copiado para o Dropbox, mas apenas se houver alguma alteração. Doce!