Backup de email Google Apps e Gmail

Trabalho em uma pequena empresa mais ou menos 30 funcionários com contas de e-mail. Utilizamos o Google Apps Standard, mas o backup está disponível apenas na versão paga. Obviamente temos que ter um backup de todas as contas de e-mail. O getmail se mostrou a solução mais flexível para resolver o problema.

[ Hits: 27.923 ]

Por: Leo F. em 26/01/2011


Configuração



se você irá realizar apenas o backup do seu e-mail pessoal do Gmail, use o usuário comum. Diretório de configurações do getmail:

mkdir ~/.getmail

Diretório para guardar os arquivos .mbox:

mkdir ~/gmail/

O arquivo de configuração padrão do getmail é o ~/.getmail/getmailrc, se você irá fazer backup de apenas uma conta de email, crie e edite esse arquivo.

Uma conta de e-mail:

vim ~/.getmail/getmailrc

[retriever]
type = SimpleIMAPSSLRetriever
server = imap.gmail.com
port = 993
mailboxes = ("[Gmail]/Todos os e-mails",)
username = seu_email@gmail.com ou seu_email@dominio.com.br
password = seu_password
move_on_delete = bin
[destination]
type = Mboxrd
path = ~/gmail/seu_email.mbox
[options]
verbose = 1
message_log = ~/.getmail/seu_email.log
read_all = false
delete = false

O getmail não cria o arquivo mbox sozinho:

touch ~/gmail/seu_email.mbox

Execute o comando getmail:

getmail

Essa configuração baixa todos os e-mails, incluindo spam e lixeira e não deleta arquivos removidos.

Várias contas de e-mail:

# mkdir ~/.getmail
# mkdir ~/gmail/


Deve ser criado um arquivo de configuração para cada usuário igual ao "getmailrc", não esqueça de alterar os campos (message_log, username, password e path), principalmente o nome do mbox.

Criar arquivo de configuração para cada usuário:

~/.getmail/usuario01
~/.getmail/usuario02
~/.getmail/usuario03

Criar arquivo mbox para cada usuário:

# touch ~/gmail/usuario01.mbox
# touch ~/gmail/usuario02.mbox
# touch ~/gmail/usuario03.mbox


Script:

# vim ~/backup_gmail.sh

#!/bin/bash
getmail -r usuario01
getmail -r usuario02
getmail -r usuario03

# chmod +x ~/backup_gmail.sh

CRON - Agendar o backup para rodar todos os dias as 23h:30mim:

# crontab -e

30 23 * * * ~/backup_gmail.sh

Página anterior     Próxima página

Páginas do artigo
   1. Instalação
   2. Configuração
   3. Ler, pesquisar e restaurar e-mails a partir do backup
   4. Erros comuns e opções
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

GRIP - Conversão e ripagem de CDs em Linux

Instalando o Gnome-2.20.3 no Slackware 12 usando o Gslapt

Configurando uma OpenVPN com o BRMA

Image2mpeg - Prepare suas imagens para apresentação em DVD

Bottlenecks - Métricas de performance de servidores

  
Comentários
[1] Comentário enviado por Lisandro em 27/01/2011 - 09:15h

Muito útil. Vou guardar essa.

[2] Comentário enviado por removido em 27/01/2011 - 13:37h

Muito bom cara !


Abraço.

[3] Comentário enviado por obernan em 31/01/2011 - 15:09h

Bem legal seu artigo parabens !!!!!!

[4] Comentário enviado por fabioxxxx em 24/02/2011 - 09:38h

IMPORTANTE
PROBLEMA COM GETMAIL & GMAIL : EMAIL MARCADO COMO LIDO APÓS DOWNLOAD

Depois de trocar alguns e-mails com o pessoal da lista do getmail , o Sr Matthias Andree me forneceu um patch para solucionar o problema. (na verdade não é um problema, os desenvolvedores do getmail não querem mudar a maneira como ele baixa as mensagens)

O patch vem sendo utilizado a algum tempo, pelo pessoal da lista até agora não foi relatado nenhum problema.

PATCH
salve o patch com qualquer nome (ex : patch.txt)
https://docs.google.com/leaf?id=0B4TpWih2eqZwYzQ0ZWI4OWEtOWMyMi00ZjRjLThiZTEtOTgyZWM0YjQ3Y2Q1&hl=pt_...

edite o PATCH com o caminho para sua versão do getmail "....diff -ur getmail-4.XX.X/getmailcore/_retrieverbases.py..."

ACHAR PASTA GETMAILCORE
(RPM)
#rpm -ql getmail | grep _retrieverbases.py
na minha distro está aqui : /usr/lib/python2.4/site-packages/getmailcore/_retrieverbases.py
(DEB)
#dpkg -L getmail | grep _retrieverbases.py

BACKUP
faça um backup do arquivo por via das dúvidas
#cp caminho/_retrieverbases.py caminho/_retrieverbases.py.bkp



APLICAR PATCH
# patch caminho_para_retrieverbases.py < caminho_para_patch.txt


[5] Comentário enviado por geraldozys em 23/05/2011 - 16:47h

Meus parabéns pelo artigo, irá auxiliar em muitas coisas :)

Muito obrigado.

[6] Comentário enviado por fabioxxxx em 31/08/2011 - 09:05h

GETMAIL VS GMAIL: E-MAIL MARCADO COMO LIDO APÓS DOWNLOAD

parece que a formatação de texto nos comentários altera as propriedades do patch. segue um link para o download do txt.

https://docs.google.com/leaf?id=0B4TpWih2eqZwYzQ0ZWI4OWEtOWMyMi00ZjRjLThiZTEtOTgyZWM0YjQ3Y2Q1&hl=pt_...

[7] Comentário enviado por silasrm em 12/12/2011 - 09:37h

Salve,

Estou com problemas na mbox:


Copyright (C) 1998-2009 Charles Cazabon. Licensed under the GNU GPL version 2.
SimpleIMAPSSLRetriever:XXXXXXXX@gmail.com@imap.gmail.com:993:
getmailrc: operation error (IMAP error (command SELECT ('[Google Mail]/Todos os e-mails',) returned NO ['[NONEXISTENT] Unknown Mailbox: [Google Mail]/Todos os e-mails (Failure)']))
0 messages (0 bytes) retrieved, 0 skipped
IMAP error during logout (command CLOSE illegal in state AUTH, only allowed in states SELECTED)

-------

Já coloquei todas as opções que tem na última página do artigo e sempre dá o mesmo problema.

/////////

Coloquei:

mailboxes = ("[Gmail]/All Mail",)

E foi normal

[8] Comentário enviado por fabioxxxx em 12/12/2011 - 10:01h

opa Silas

qual distro e versão de getmail você está usando ?

aqui eu uso sempre a opção mailboxes = ("[Gmail]/Todos os e-mails",)

tente verificar se o imap está ativado na sua conta.

[9] Comentário enviado por l1p3 em 30/10/2012 - 14:21h

Não sei se este tópico esta vivo, consegui fazer a configuração mas no momento que executo o "getmail" ele me retorna a seguinte mensagem de erro:

2012-10-30 11:48:45 Delivery error (mboxrd delivery 1343 error (127, mbox delivery process failed (refuse to deliver mail as root)))
2012-10-30 11:48:45 msg 78/5175 (87270 bytes) msgid 650704850/[Gmail]/Todos os e-mails/104 from <emaildo@usuario.com.br>

[10] Comentário enviado por fabioxxxx em 22/11/2012 - 15:53h

agora o getmail não funciona mais com o usuário root... execute como um usuário comum.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts