Archiviare e ripristinare email con archivemail
Archiviazione
- Installare
sudo apt-get installa archivemail
- Loggarsi cme root, per abilitare il shell globbing
sudo -i
- Esempio per copiare mail precedenti al 2010 da tutte le cartelle nella directory /tmp/emba, tralasciando i messaggi marcati come importanti
archivemail --date=2009-12-31 \ -o /tmp/emba \ /home/emiliano.basso/Maildir/.testarchivio /home/emiliano.basso/Maildir/.[A-Fa-f0-9]*
- Esempio per copiare mail precedenti al 2010 da tutte le cartelle nella directory /tmp/emba, includendo anche i messaggi marcati come importanti
archivemail --date=2009-12-31 \
--include-flagged --copy -o /tmp/emba /home/emiliano.basso/Maildir/.[A-Za-z0-9]*
- Script di archiviazione che archivia in /mnt/nome_utente
#!/bin/bash
cd /home
for USRNM in *
do
mkdir -p /mnt/${USRNM}
sudo chown -R ${USRNM} /mnt/${USRNM}
archivemail \
--date=2009-12-31 \
--include-flagged \
-o /mnt/${USRNM} \
/home/${USRNM}/Maildir/.[A-Za-z0-9]*
done
Ripristino
- Il backup è fatto in files MBOX gzippati per ogni maildir.
- Ungzizippare i files
gunzip .*.gz
- Installare mb2md
sudo apt-get install mb2md
- Convertire in Maildir i files MBOX
!/bin/bash
find /tmp/username -iname ".*[A-Za-z0-9]" | \
while read MAILBOX
do
MAILDIR=/tmp/username/maildir/.Archivio.2010$(basename "$MAILBOX" "_archive")
echo "MAILBOX=$MAILBOX"
echo "MAILDIR=$MAILDIR"
mb2md -s "$MAILBOX" -d "$MAILDIR"
done
- Cambiare l'owner
sudo chown -R username: maildir/
- Creare le maildir superiori, se mancanti
sudo -u username maildirmake /home/username/Maildir/.Archivio sudo -u username maildirmake /home/username/Maildir/.Archivio.2010
- Spostare tutto
sudo mv /tmp/username/maildir/.*[A-Za-z0-9] /home/username/Maildir