offlineimap < img src="https://hostmar.co/software-small"> é uma solução popular para isso.
Ativar o IMAP no GMail
- Faça login no Gmail.
- Clique em Configurações na parte superior de qualquer página do Gmail.
- Clique em Encaminhamento e POP / IMAP.
- Selecione Ativar IMAP.
- Configure seu cliente IMAP e clique em Salvar alterações.
Configurar o offlineimap
Depois de instalar, crie um .offlineimaprc
[general]
accounts = GMail
maxsyncaccounts = 3
[Account GMail]
localrepository = Local
remoterepository = Remote
autorefresh = 10 #refresh every 10 minutes
quick = 5 #Quick-syncs do not update if the only changes were to IMAP flags
[Repository Local]
type = Maildir
localfolders = /whatever/directory
[Repository Remote]
type = IMAP
remotehost = imap.gmail.com
remoteuser = [email protected]
remotepass = your_password
ssl = yes
maxconnections = 1
#Setting realdelete = yes will Really Delete email from the server.
#Otherwise "deleting" a message will just remove any labels and
#retain the message in the All Mail folder.
realdelete = no
Então você precisa executar o offlineimap.
Automatizando o offlineimap com o cron
Em alguns casos, ter o offlineimap em execução o tempo todo pode consumir grandes quantidades de memória, especialmente se você tiver uma caixa de correio grande, então você pode adicionar uma verificação offlineimap no cron para apenas verificar e sair, aqui está um backup diário:
@daily offlineimap -u Noninteractive.Basic
Fazendo o backup do offlineimap
Os arquivos estarão no que você definir na linha localfolders como um Maildir . Você pode fazer o backup usando o método de backup que você usa: