CED - Bash scripts

Automatizzare la migrazione delle caselle di posta da mailbox a maildir

Il formato mbox è usato dalla maggior parte dei server POP3/IMAP  MTAs e MUAs. Il formato maildir è utilizzato da Qmail, Courier-MTA


Solitamente le caselle di posta in formato mailbox (abbreviato mbox) sono collocate in due diverse directory:

  • /var/spool/mail/nomeutente
  • /home/user/mail/xxxxx


Nella prima si trova la posta in arrivo (letta e non) dell'utente. Nella seconda si possono trovare le directory create dall'utente per archiviare la posta.

Lo scopo di questo script è quello di automatizzare la migrazione delle caselle di posta. Per fare cio' ci si puo' avvalere di un'ottimo script in perl chiamato mb2md.

Questo script perl effettua la conversione da un formato all'altro, ma il limite è che agisce per singolo utente. Per effettuare una migrazione di massa è possibile utilizzare questo script bash.
In breve prende i file dalle rispettive directory e crea un file di nome "utente.tar.gz" pronto ad essere trasmesso al nuovo server che supporta maildir (ad es. Qmail)

#/bin/bash

# Migrazione delle caselle da mailbox a maildir
# Lo script perl deve essere copiato in /tmp/prove

cd /var/spool/mail/
for file in `ls *`
do

# creare un link simbolico da user a root:
ln -s /var/spool/mail/$file /var/spool/mail/root

echo $file

# creare la directory /tmp/prove/mbox
mkdir -p /tmp/prove/mbox/$file

# migrare incoming mail
/tmp/prove/mb2md-3.20.pl -m -d /tmp/prove/mbox/$file

# migrare la home dell'$file
/tmp/prove/mb2md-3.20.pl -s /home/$file/mail/ -R -d /tmp/prove/mbox/$file

# creo gli archivi tar di ogni utente
tar cvfz /tmp/prove/$file.tar.gz /tmp/prove/mbox/$file

# rimuovo link simbolico
rm -f /var/spool/mail/root
done
exit 0


Potere scrivere a ced@comune.arenzano.ge.it per segnalazioni, correzioni ed altro.