Dovecot Migração e correios antigos

3

Estou migrando meus e-mails de um servidor antigo para um novo, a configuração é boa (contas virtuais do mysql e somente imap ), com dovecot e postfix. Ele já está sendo executado para outros usuários, apenas quero mesclar contas antigas do servidor antigo para o novo.

A migração correu bem, eu só queria saber como eu poderia " mostrar " todos os e-mails antigos em Clientes UA. Quer dizer, existe algum arquivo índice dovecot ou tal que possa ser recriado, destruído, de forma que todos os e-mails antigos sejam "sinalizados" como novo ?

    
por lovethebomb 31.01.2012 / 23:19

4 respostas

1

O Maildir usa um formato exclusivo que facilita bastante isso. Simplesmente coloque o e-mail no diretório new/ dentro dos usuários de correio mailroot, se quiser que ele apareça como novo. Caso contrário, vai no diretório cur/ .

    
por 31.01.2012 / 23:38
4

Para mensagens do Maildir, tais sinalizadores são armazenados no nome do arquivo . Por exemplo:

1328040798.M558634P29803.equal,S=17876,W=18294:2,FS

As letras FS após a vírgula significam Flagged e Seen . Para marcar a mensagem como "invisível", remova o S flag ...

for msg in maildir/cur/*; do
    msgbase=${msg%,*}
    flags=${msg##*,}
    flags=${flags//S/}
    mv -v "$msg" "$msgbase,$flags"
done

... ou simplesmente envie as mensagens para a pasta new :

mv maildir/cur/* maildir/new/
    
por 31.01.2012 / 23:43
4

Eu tentei a resposta aceita e ela falhou - as versões dovecot em jogo provavelmente estão muito distantes e também trocamos o MTA subjacente. Então, aqui está uma solução mais robusta: doveadm import

Supondo que você está hospedando e-mails para o domínio hosted.tld e existe uma conta para o login [email protected] (ou talvez simplesmente ruth ) e o backup do servidor anterior está no formato MailDir e disponível dentro de uma estrutura de pastas como / tmp / TRANSFER / domínio / conta / Maildir então você pode importá-los para sua nova hospedagem dovecot com

$ doveadm import -u [email protected] maildir:/tmp/TRANSFER/hosted.tld/local.account/Maildir "" all

mais em termos gerais:

$ doveadm import -u LOCAL_USER FORMAT:PATH "" all

Tudo o que pode ser extraído do manual excelente . Foram necessárias duas tentativas para descobrir que simplesmente usar "" (caixa de correio de destino vazia) era o que nós realmente queríamos; -)

Você pode até ter mais sorte do que nós sem precisar transferir os arquivos de antemão - se o servidor antigo e o novo estiverem funcionando ao mesmo tempo e suas contas estiverem configuradas adequadamente usando sincronização doveadm .

    
por 01.08.2017 / 16:50
3

O formato Maildir consiste em uma série de diretórios - correspondendo à estrutura de pastas IMAP, dentro da qual estão os emails, um arquivo por email.

Para copiar e-mails de um sistema de e-mail para outro, você pode simplesmente copiar os diretórios e arquivos e garantir que as permissões para esses diretórios e arquivos estejam corretas no destino.

A estrutura do Maildir tem esta aparência:

mail/cur/
mail/new/
mail/tmp/
mail/.personal/cur/
mail/.personal/new/
mail/.personal/tmp/

Isso mostra a pasta INBOX (cur, new, tmp) e outra pasta chamada "personal". Observe o prefixo do ponto mostrando que essa pasta está oculta, portanto isso deve ser considerado na sua transferência.

A pasta new contém todos os emails que não foram vistos por um cliente e a pasta cur contém os emails atuais. A pasta tmp deve estar vazia se o servidor de e-mail não estiver funcionando.

    
por 31.01.2012 / 23:39