Converta dados brutos do servidor IMAP em pastas locais e, em seguida, carregue o conjunto de dados parcial para o novo servidor IMAP?

0

Estou fazendo a transição de uma empresa com cerca de 30 contas IMAP, carregadas com dados (cerca de 77 GB no total) para um novo host de e-mail. A maioria dos dados será convertida em um arquivo local e distribuída para os computadores da empresa como um conjunto de dados de referência estática.

As pastas do lado do servidor que os usuários não podem fazer sem estar no servidor serão enviadas de volta para o novo servidor.

Eu usei o Mac OS X Mail (Snow Leopard 10.6.6) para baixar o conteúdo. Eu noto que algumas mensagens têm o nome [xxx] .partial.emlx, o que me leva a acreditar que elas não foram baixadas até o final.

Eu tenho acesso root aos dados do servidor de e-mail e poderia baixar os dados do servidor IMAP via FTP. Não tenho certeza qual utilitário usar para converter esses dados para caixas de correio Mail.app locais.

Além disso, eu gostaria de receber informações sobre a melhor maneira de enviar uma parte dos dados para o novo servidor (GoDaddy), preservando as datas originais das mensagens.

editar

OK - esqueça os dados brutos do servidor. Eu encontrei um script que aparentemente faz muito bom arquivamento de pastas IMAP para arquivos mbx locais. Minha missão principal agora é fazer o upload em lote de uma hierarquia de caixas de correio para o novo servidor IMAP sem ter que começar a parar e lidar com problemas semelhantes. Alguém sabe de um utilitário (espero que para o OS X, mas se não, eu vou ligar o meu sistema virtual XP ...) que seria capaz disso?

Obrigado,

M

    
por Manca Weeks 27.02.2011 / 03:49

2 respostas

0

Você pode encontrar o offlineimap para ser útil na sincronização de alguns e-mails de um servidor de e-mail para outro. Para sincronizar o imapserver1 com o imapserver2, configure uma configuração para sincronizar o servidor1 com uma pasta maildir local e defina essa configuração para excluir as pastas que você não deseja. Em seguida, configure outra configuração para sincronizar a pasta maildir local integralmente ao imapserver2.

Como alternativa, você pode fazer a mesma coisa graficamente usando o Mozilla Thunderbird (ou talvez o Apple Mail também. Eu não o usei). Basta configurar as contas IMAP de origem e destino no Thunderbird, depois arrastar e soltar (e esperar).

Claro, tudo isso pressupõe que você tenha os servidores IMAP antigo e novo em execução.

    
por 27.02.2011 / 18:51
0

Estou assumindo que o servidor IMAP usa o formnat Maildir para armazenar seus dados (/ path / to / mail / user / Maildir / cur /)

Você pode sincronizar uma estrutura de diretório entre duas máquinas Unix (ou OS / X) usando a ferramenta de linha de comando rsync.

Digamos que você tenha seu servidor de e-mail em mta01 (antigo) e mta02 (novo) e o e-mail é armazenado em / var / mail ...

Copiar o email do servidor para o computador local seria:

$ rsync -avP root@mta01:/var/mail mailBackup

Remova o conteúdo do mailBackup para atender às suas necessidades e, em seguida, copie-o de volta com:

$ rsync -avP mailBackup/* root@mta02:/var/mail/

Obviamente, você precisaria ativar logins ssh de raiz no servidor para que isso funcionasse ou usar outro usuário que tenha acesso à estrutura completa de e-mail.

Você também pode precisar alterar as permissões do arquivo no email (dependendo de como o email está configurado) e isso pode funcionar (ou algo similar):

(on the server as root)
# cd /var/mail
# for USER in 'ls'
> {
> chown -R $USER $USER
> }

Obviamente, tudo depende do software de servidor de e-mail que você está executando, mas a maioria usa o Maildir para o formato.

O formato Maildir armazena cada email como um arquivo de texto simples individual. Uma estrutura de arquivos típica é:

/var/mail/matt/Maildir/ <- root Maildir folder
/var/mail/matt/Maildir/new/ <- New messages in INBOX
/var/mail/matt/Maildir/cur/ <- Existing (read) messages in INBOX
/var/mail/matt/Maildir/tmp/ <- Temporary work area
/var/mail/matt/Maildir/.Friends/ <- Root of the 'Friends' folder
/var/mail/matt/Maildir/.Friends/new/ <- New messages in the 'Friends' folder
/var/mail/matt/Maildir/.Friends/cur/ <- Existing (read) messages in the 'Friends' folder
/var/mail/matt/Maildir/.Friends/tmp/ <- Temporary work area

... e assim por diante.

    
por 27.02.2011 / 11:01