Migração de e-mail: enviando e-mails para a conta IMAP

3

Estou tendo problemas ao migrar o sistema de e-mail da nossa empresa de um provedor antigo para um novo, chame este de FOO.

Eu já criei, via painel de controle, os endereços de e-mail e as caixas de correio no FOO para duplicar a estrutura existente. Para verificar se tudo funciona, adicionei e configurei uma nova conta em cada cliente de e-mail com dados FOO smtp e imap e fiz um simples envio e recebimento. Até aí tudo bem, os clientes enviam e recebem e-mails sem nenhum problema.

O problema é que novas caixas de correio no FOO estão vazias e eu preciso preenchê-las com emails existentes.

O que eu tenho: para cada cliente dos meus usuários locais Eu tenho um monte de arquivos .eml organizados em pastas (Caixa de Entrada, Itens Enviados, etc.). Cada .eml é um email.

O que eu quero: para cada conta Eu quero importar esses arquivos .eml para as caixas de correio FOO, para que eu possa configurar os clientes com FOO imap server / username / password e os usuários tenham seus e-mails disponíveis novamente .

Inicialmente eu fiz assim: na minha instalação pessoal local do Thunderbird eu criei uma conta para cada conta de usuário para migrar. Eu importei (via extensão ImportExportTools TB) arquivos .eml para a conta recém-criada. Automaticamente o Thunderbird sincroniza e-mails entre o cliente local e o servidor imap no WF.

Seria ótimo se funcionasse ... mas depois de algum tempo a tarefa falhou. Às vezes, por tempos limite, outras vezes por problemas de rede e assim por diante ... Basicamente, o processo é interrompido por algum motivo e não consigo obter todos os meus e-mails no servidor remoto.

Eu tenho que migrar muito de e-mails (média de 5/6 Gb para cada usuário).

Minha solução:

  1. para cada cliente existente a ser migrado, crie um zip contendo os arquivos .eml correspondentes.
  2. carregue cada zip para minha conta FOO (usando scp ou ftp, eu tenho que pensar sobre isso)
  3. instale um cliente de email de linha de comando (pine? mutt? outros ?! QUAL UM?) na minha conta FOO
  4. crie uma conta de e-mail para cada conta para migrar
  5. import .eml para o cliente e espero que a sincronização IMAP aconteça

Para mim parece bastante complexo, e eu nem tenho certeza se poderia funcionar. Você tem uma solução melhor para isso? E qual cliente suporta eml import e IMAP?

Qualquer sugestão muito apreciada.

    
por Paolo 02.08.2012 / 10:04

1 resposta

7

Se você ainda tiver acesso ao serviço original, o melhor método é usar a ferramenta ìmapsync (ou OfflineIMAP como alternativa).

Isso permitirá que você sincronize temporariamente do serviço antigo para o novo. Ele também reterá todos os sinalizadores para que os marcadores não lidos sejam mantidos. Também irá reter quaisquer estruturas de pastas.

A segunda maneira mais comum de conseguir isso exigiria uma coordenação cuidadosa do roteamento de e-mail. Isso seria uma cópia de arquivo dos dados de origem que normalmente seria no formato maildir ou mbox. Isso também pode exigir ajuda do provedor de email anterior, a menos que você tenha acesso ao serviço antigo.

imapsync é certamente o método preferido. Tentar fazer uma transferência usando arquivos eml não é recomendado. Para começar, você terá perdido todos os sinalizadores e pastas. Além disso, tentar fazer isso por 5-6GB por usuário vai demorar muito tempo. Você terá que fazer isso em etapas.

Além disso, não tenho certeza se o Pine ou o MUTT ajudarão a fazer isso da maneira que você descreveu, embora seja possível gravar macros para transferir os arquivos alguns de cada vez.

UPDATE :

Como agora sabemos que a sincronização do original não é possível. A melhor maneira de criar scripts de entrada de arquivos EML para um sistema baseado em maildir (se é isso que você tem, é o formato de armazenamento mais comum para servidores IMAP do Linux) é usar

getmail_maildir ~/Maildir/ < email_file.eml

getmail_maildir faz parte do pacote getmail . Este somente funciona se você tiver acesso direto às pastas de correio, embora isso seja comumente verdadeiro com os melhores hosts. Não tenho certeza sobre como fazer isso com o outro formato de armazenamento de email mbox , mas acho que getmail também tem um comando getmail_mbox . Além disso, o aplicativo do Windows " IMAPSize " possui um comando para converter de EML para mbox.

Então, novamente, é muito mais fácil migrar os e-mails para um armazenamento de e-mail físico do que tentar passar tudo pelo IMAP. No entanto, pode ser que você tenha que fazer isso porque o novo provedor não pode fornecer acesso adequado (como seria o caso se migrar para o GMail, por exemplo).

Se este for o caso, o melhor é migrar os arquivos EML para o formato maildir usando um maildir local "sintético" (não há nada realmente especial sobre maildir exceto as convenções de nomenclatura para que você não precise de um IMAP servidor para usá-los) e getmail_maildir . Em seguida, use o IMAPSync ou o OfflineIMAP para passar do maildir local para o novo serviço. Dessa forma, você não precisa mexer em tentar fazer o script do MUTT.

    
por 02.08.2012 / 10:58