postfix 之MailBox 轉換 MailDir

postfix 之MailBox 轉換 MailDir

文章super » 2010年 1月 9日, 03:21

執行rpm -qa|egrep -i 'perl-5|perl-TimeDate',確認已經安裝Perl與TimeDate兩個元件。(http://search.cpan.org/~gbarr/TimeDate-1.16/)
下載http://batleth.sapienti-sat.org/projects/mb2md/mb2md-3.20.pl.gz
解開mb2md-3.20.pl.gz
gzip -d mb2md-3.20.pl.gz
chmod +x mb2md-3.20.pl
mv mb2md-3.20.pl /usr/local/bin/mb2md
執行下面的Shell Scrip

代碼: 選擇全部
#!/bin/sh
MBOXDIR="/var/spool/mail"
MAILDIR="/var/spool/maildir"
cd $MBOXDIR
for user in *; do
mkdir -p $MAILDIR/$user
mb2md -s $MBOXDIR/$user -d $MAILDIR/$user/
chmod -R 700 $MAILDIR/$user/
chown -R $user.$user $MAILDIR/$user/
done


結束後,就會將/var/spool/mail轉換到/var/spool/maildir。
修改Postfix的main.cf設定(/etc/postfix/main.cf),加入下面這行:
mail_spool_directory=/var/spool/maildir/
修改Dovecot IMAP設定檔:(/etc/dovecot.conf)
default_mail_env=maildir:/var/spool/maildir/%u
接下來,全部發信會有問題:
said: 451 4.5.0 Error in processing, id=16056-04, mime_decode-1 FAILED: MIME::
Parser: can't open tmpfile: Invalid argument (in reply to end of DATA command))
解法很簡單,跟著下面步驟。
修改/var/spool/maildir ownner 要跟舊的 /var/spool/mail 一樣。
執行下面兩個目錄權限異動:
chmod 1777 /var/spool/maildir/
chmod 1777 /tmp
如果還有queue,在下postsuper -r ALL。

代碼: 選擇全部
#!/bin/sh

MBOXDIR="/root/OLD/mail"
MAILDIR="/home"
cd $MBOXDIR
for user in *; do
    if [ -d $MAILDIR/$user ]; then
        mb2md -s $MBOXDIR/$user -d $MAILDIR/$user/Maildir
        chmod -R 777 $MAILDIR/$user/Maildir
        chown -R $user:User $MAILDIR/$user/Maildir
    fi
done
super
系統管理員
 
文章: 2226
註冊時間: 2008年 8月 15日, 07:39

回到 Linux 筆記



cron