Wiki

Clone wiki

migrazione-imap / Home

IMAP2IMAP

Script/template PHP per la sincronizzazione e migrazione via IMAP di più caselle di posta elettronica.

Il template è pre-impostato e ottimizzato per migrazione verso Google Apps.

Richiede imapsync:

imapsync - IMAP synchronisation, sync, copy or migration tool.
Synchronise mailboxes between two imap servers. Good at IMAP migration.
More than 44 different IMAP server softwares supported with success.

Installazione

Debian-based:

apt-get install libmail-imapclient-perl libdigest-md5-file-perl
apt-get install libterm-readkey-perl libio-socket-ssl-perl libfile-spec-perl libdigest-hmac-perl
perl -MCPAN -e 'install Authen::NTLM' 

Perl CPAN:

perl -MCPAN -e 'install Mail::IMAPClient' 
perl -MCPAN -e 'install Digest::MD5' 
perl -MCPAN -e 'install Term::ReadKey' 
perl -MCPAN -e 'install IO::Socket::SSL' 
perl -MCPAN -e 'install File::Spec' 
perl -MCPAN -e 'install Digest::HMAC_MD5' 
perl -MCPAN -e 'install Authen::NTLM' 
perl -MCPAN -e 'install Time::HiRes' 
  1. Scaricare, compilare e installare imapsync >= dc7395e/1.480
  2. Creare il file pseudoCSV con le utenze
  3. Configurare gli host e il dominio a inizio script
  4. Lanciare lo script in screen
  5. Prendere nota del tempo stimato per migrare la prima mailbox, e tornare alla shell verso quell'ora
  6. (ripetere ultimo punto fino all'ultima utenza)

Configurazione script

define('HOST_FROM', 'imap.dominio.ext');      // IMAP host di provenienza
define('HOST_TO', 'imap.gmail.com');          // IMAP host di destinazione
define('DOMAIN', 'dominio.ext');              // dominio da migrare (senza @)

File Utenze

Il file delle utenze è un semplice file con gli argomenti separati da punto e virgola, secondo questo schema:

username_o_email_originale;password_originale;nuovo_username;nuova_password
username_o_email_originale2;password_originale2;nuovo_username2;nuova_password2
...

Esempio Output

msg INBOX.Sent/159 {2014}  copied to Sent/159  0.34 msgs/s  115.09 KiB/s  ETA: Sat Oct 27 23:15:35 2012  485 s  164 msgs left

Legenda: [cartella]/[numero messaggio] {bytes} [location] [velocità migrazione] [ ETA ] [msg rimasti]

Updated