Стоит Sendmail, почта юзеров складируется в файлы в /var/spool/mail, хочу перейти на Postfix, где почта будет складываться в каталог Maildir в персональном каталоге пользователя. Почтовых пользователей много и сказать каждому, что мол забери всю почту, а то на новом сервере она не сохранится, никак не могу. Поэтому хотелось бы узнать есть ли какой-нибудь конвертер, который бы перегнал почту из mailbox'ов в Maildir?
>Стоит Sendmail, почта юзеров складируется в файлы в /var/spool/mail, хочу перейти на
>Postfix, где почта будет складываться в каталог Maildir в персональном каталоге
>пользователя. Почтовых пользователей много и сказать каждому, что мол забери всю
>почту, а то на новом сервере она не сохранится, никак не
>могу. Поэтому хотелось бы узнать есть ли какой-нибудь конвертер, который бы
>перегнал почту из mailbox'ов в Maildir?есть, ищи в районе qmail, courier-imap, imap... - везде есть ссылки на
конвертеры
>>Стоит Sendmail, почта юзеров складируется в файлы в /var/spool/mail, хочу перейти на
>>Postfix, где почта будет складываться в каталог Maildir в персональном каталоге
>>пользователя. Почтовых пользователей много и сказать каждому, что мол забери всю
>>почту, а то на новом сервере она не сохранится, никак не
>>могу. Поэтому хотелось бы узнать есть ли какой-нибудь конвертер, который бы
>>перегнал почту из mailbox'ов в Maildir?
>
>есть, ищи в районе qmail, courier-imap, imap... - везде есть ссылки на
>
>конвертерыА по моему быстрее самому написать, используя mail. Например в Linux-е (да думаю в BSD тоже):
Получить количество месаг:
msgcnt=`echo x | mail -f /path/to/mailbox -N | awk -F: '{print $2}' | awk '{print $1}'`
echo $msgcnt
(если месаги в /var/spool/mail, то возможно mail -u user вместо mail -f ...)
Допустим количество месаг больше нуля:Сохранить 1-ю месагу:
i=1
printf "s%i msgi.msg\nx\n" ${i} ${i} | mail -f /path/to/mailbox > /dev/null
^^^
что то оно процент странно изображает. должно быть msg,
потом знак процента, потом 04, потом i.msgСоздаст в текущей директории файл msg0001.msg, содержащий первое письмо
Ну и так далее. Владельца естественно надо будет поменять.Можно это же самое на C сделать (pipe, popen) - тогда раз в 200 быстрее будет.
По крайней мере я в свое время так сделал и проблем не было. И времени заняло считанные минуты (на написание программы, имеется ввиду).
>есть, ищи в районе qmail, courier-imap, imap... - везде есть ссылки на
>конвертерыДа, действительно. Путём всевозможных извращений в поисковике яндекса выловил интересную програмульку на перле mbox2maildir.
Вот линк, кому интересно:
http://video.spb.osi.ru/~levsha/factory/inform/qmail/mbox2ma...
Правда в нём в конце каждой строки стоит символ возврата каретки (видать сохраняли в каком-то виндовом текстовом редакторе), но после зачистки скрипт заработал на ура.
P.S. Спасибо всем за помощь.
Привет всем!
Вот возникла похожая проблема -
нужно перенести cyrus mailbox в Maildir.Может имел кто опыт?